make LocalStorage.load asynchronous to match future remote storage API
implement basic remote storage
improve remote storage in terms of fault tolerance