reorganizing the data access layer.
Setting it up so you can chain together data sources for a repository
This should make it easy to pull data from the repository then store it in cache for the next request.