data callback, cache key support and data staleness checking
merging readme changes