Added a Store interface

* better type hinting
* better documentation