Rewrite to support chrome-storage and localstorage with the same async interface.  Support serializing/deserializing objects on the fly for local storage to emulate chrome storage.