add functional testing for store controller
add caching