ISPN-2806 Karsten's Faster FileCacheStore implementation

* This CacheStore implementation stores cache values in a single file,
and keeps keys and file positions in memory. Max memory consumption
can be controlled via a maxEntries parameter.
* Always keep on-disk state up to date: Write changes to disk
immediately, including the cache keys. On startup, the state of the
cache store can be restored by scanning the entire file.
* Clean shutdown (storing the in-memory index on stop()) is no longer
required for persistence.

Signed-off-by: Karsten Blees <blees@dcon.de>
ISPN-2806 Rename Karsten's file cache store and add configuration

* Renamed the cache store to a more meaningful name.
* Added new style configuration and configuration builder classes.
* Modified parser to deal with new single file cache store.
* Added tests that verify single file cache store configuration.
ISPN-2608 VersionedDistStateTransferTest intermittent failure

Wait for state transfer to end before checking the results
ISPN-2515 VersionedReplStateTransferTest.testStateTransfer fails randomly

Wait for state transfer to end before checking the results
ISPN-2771 WriteSkewTest.testWriteSkewWithOnlyPut fails randomly

The test in question is performing the write skew check before the key is locked.
ISPN-2950 In distributed mode cache store data should be read through the main data owner (vs directly from the store)

* Changed ClusteredCacheLoader to only read from primary owner
* Added tests to verify non owner doesn't read from cache store
* Also fixed up cache statistics so skips aren't counted as misses
* Added some tests for invalidation with loader/store
ISPN-2861 Integrate the CloudTM extended statistics in Infinispan
ISPN-3109 Integration of protostream library (protobuf serialisation protocol) with hot-rod marshaller

Put and get an object from a remote cache over hotrod using protobuf as a serialization protocol for all user payload.
Fix hibernate-annotations version number
Fix BOM to have a distributionManagement section so it can be deployed in maven repo
Fix BOM to have license information, SCM URL, developer information, etc so it passes the rules to be accepted in the 'releases' maven repo