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
Can you add javadoc what 'completionOperation' means; it is totally unclear to me. It isn't a sync on the future, since the future is returned. So apparently it a different concept. If the concept spans multiple methods, you should add it to the javadoc of the class.