updated PreloadStore API

so that it is more clear that we are deleting preloaded data once read.

This was discussed in #481

- [x] renamed the `get` method to `getAndRemove` to make the intent of the method clearer
- [x] deleted the `getStatic` method
- [x] added a `get` method that returns data from the store if available
- [x] added a `remove` method that deletes data from the store (`delete` is a reserved word in JavaScript)
- [x] replaced calls to `getStatic` to calls to both `get` and `delete` methods
- [x] removed the useless `contains` method
- [x] updated the specs to match the new API