Reusable generic abstraction on top of indexedDB

in order to ease further reuse for other databases/stores.