testing inmemory storage
commit before localstorage_impl branch
fleshed out persistence layer (again)