OAK-854 - Use weight based caching limit instead of size based limits

Adding support for using a Weigher which determines object weight through its size. The size determination logic uses emperical data to determine the size. Following changes done
 - Exposed a config for cache size. Defaults to 256 MB
 - The cache size is then distributed between three caches Node, Children and Document in 20%, 10%, 70% respectively
 - Enabled stats collection by default. Later would make it configurable

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/oak/trunk@1491442 13f79535-47bb-0310-9956-ffa450edef68