Use basic data caching with the data directive

Handles fetching in a service
Redesign service using a provider with injectable cache
Clear data from cache on error

This is similar to what is done for the $http service.
Merge pull request #11 from WealthBar/basic-data-caching

Add caching behavior for D3