no sere usuario por que no vivo en E.S, pero me imagino que sera util para los compatriotas

Ahora, un consejo: siempre agrega comments a tu codigo!
Lo del local storage te escribo un poco al rato.
-*- edit -*-
Sobre localStorageAl igual que las AJAX requests, localStorage funciona bajo de same origin policy, es decir que esta limitado al contexto del nombre de dominio.
Este fue uno de los desafios de SVCommuniter al guardar las opciones de la extension. En la extension cree un bridge para usar el localStorage de la extension y no de svcommunity.org.
En tu caso, puesto que el bookmarklet se carga bajo el DOM de cualquier sitio, el script usa el localStorage del dominio en el que el bookmarklet se abre, por lo cual data persistence es unstable.
La manera de solucionar esto es externalizando el bookmarlet y usar el localStorage de otro dominio. Por ejemplo
javascript:(function(){document.body.appendChild(document.createElement("script")).src="URL"})()
en tu caso url seria algo parecido a
http://midevolucion.heroku.com/bookmarklet.jsAdemas de proveer los beneficios de localStorage, la externalizacion incrementaria usability ya que el usuario final recibiria updates automaticamente.