Initial work on having DiskLayer implement the full StoreReadLayer API.

This introduces mainly a set of unsupported operations into DiskLayer, and
introduces a hidden config option to disable the cache layer entirely. Some
operations, like nodeExists and relExists, have been implemented.

This would be a first step for assessing database performance
without the object cache.
Fix PathValueBuilder to properly handle var-length expansions with OPTIONAL MATCH
Fix flaky PageCacheTest

The test is racing with eviction and did not properly expect this to occasionally
scew the counters.

The test has been fixed. It's not a bug in the product.
Merge pull request #2752 from jakewins/2.2-disk

Initial work on having DiskLayer implement the full StoreReadLayer API.
Fix compilation error
Less hacky way to disable generating ComponentVersion

The `io` and `primitive-collections` modules are earlier in the build than the
`kernel`, and therefore cannot have ComponentVersions.

The generation of the ComponentVersion class can be disabled by simply not
having a `version-package` property in the pom file.
Lots better than going out of our way to sabotage the ant-run plugin.
Merge pull request #2842 from chrisvest/2.2-better-disabling-component-version

Less hacky way to disable generating ComponentVersion
Merge pull request #2840 from chrisvest/2.2-flaky-muninn-test

Fix flaky PageCacheTest
Fix NiceHasher for primitive arrays
Merge pull request #2841 from pontusmelke/path-value-builder-var-length

Fix PathValueBuilder to properly handle var-length expansions with OPTIO...
Synchronizes store application

This brings in one more case under synchronization, and that is where a
store applier runs at the same time as a response unpacker. Also less
commit process objects are produced, which means that the synchronization
that guards their commit method does a better job.

bb822c974cdadb333a3f0daeb4ca4d5eca609120 started this work and this commit
takes it a little further. The root cause of why lack of this
synchronization is causing problems has to be found.
Merge pull request #2844 from pontusmelke/nice-hasher-primitive-arrays

Fix NiceHasher for primitive arrays
Merge pull request #2838 from tinwelint/2.2-sync-store-applier

Synchronizes store application
Add some more javadoc for the PageCace APIs.
Reorganise and tidy up the page cache API a bit

Mostly by moving bits that are part of the StandardPageCache implementation, into the `standard` package.
Add package-info javadocs for the page cache API

Also notes a couple of TODOs for future test work that needs to be done,
and a change to the behaviour when running out of storage space.