added store, views, tests and caching