GRADLE-767 - Fix problem where buildSrc build was attempting to recreate cache files while they were already in use by the main build. - Extracted CacheFactory out of DefaultCacheRepository, use a single instance shared by all builds. Manages cache instances used by each build. - Close caches used by a given build at the end of the build, to prevent file handle leaks. - Reworked some of the ServiceRegistry wiring. - Reworked the CacheRepository API.
GRADLE-680 - Added some basic incremental build support - Implementation is quite inefficient at this stage - Moved most service construction into DefaultServiceRegistryFactory. - Added some int test coverage for incremental builds