Add SessionStorage based store

This implements a new store, the sessionStorage store, which may be better in some use cases than persisting auth tokens indefinitely in localStorage.