Introduced prebuilt binaries
- Added PrebuiltLibraries, PrebuiltLibrary and associated binary model elements
- Moved listing of binaries out of LibraryBinaryLocator into NativeDepednecyResolver
- Added LibraryLocator that looks in PrebuiltLibraries for matching library

Cleaned up library locator: moved listing of binaries into resolver

Checkstyle fixes
Moved model rule into configure package
Removed incorrect javadoc
Libraries are no longer responsible for creating a NativeDependencySet
Split parts of NativeBinary that only apply to binaries built by Gradle into ProjectNativeBinary
Fix test for windows/linux
Replaced NativeBinary.outputFile with type-specific methods:
-  `ExecutableBinary.executableFile`, `SharedLibraryBinary.sharedLibraryFile` and `StaticLibraryBinary.staticLibraryFile`.
Test fixes