CacheProxy refactored, cleaned up

* CacheProxy refactored into three classes. 
* CacheProxy related checkstyle issues fixed. 
* Code duplicates removed.
* LoadAll async behavior is fixed.
* ICache doc improved
* ICache API addition, two async methods
This can be quite expensive. I don't know at which point the stacktrace object is created, but it could have a huge impact on your performance since stacktraces are very very expensive.