Spec update
NativeToolChain and JavaToolChain share a common ToolChain(Internal) parent
Spockified test
Pulled ToolSearchResult and friends into platform-base
Renamed some native-specific types

- `ToolChainRegistry(Internal)` -> `NativeToolChainRegistry(Internal)`
- `PlatformToolChain` -> `NativePlatformToolChain`
Introduced JavaToolChainRegistry and common ToolChainRegistry superclass
Fix tests broken after merge