Revert integration of model rules into native binary model.

 It's too incomplete for 1.10.
REVIEW-3627: Use ModuleInternal in favor of Module where possible. Determine component ID type based on project path. Simplified component ID serializer.
Single test method execution - the test / class matching is now based on simple glob than on regexp. This way it is more user friendly and also avoids some problems with regexps.
Started using a listener in TestNG for fine selection of tests instead of an awkward xml suite objects. This is more powerful and more convenient for implementing single test method execution.
Reworked the test selection dsl and implementation for simplicity and for much easier appliance of --only command line option.
Added --only option for selecting tests for execution. Supports wildcard '*' and method-level selection. It's very basic, needs review, finalization of the dsl, documentation, probably some error handling. Please review.
Used passed-in component ID in ResolvedComponentResult and extended integration tests. For now use publishedAs for RenderableDependency implementations.
Remove use of model {} in this test.
Use getPublishedAs() for now to fix dependency insight test. Reporting will be dealt with later.
Prep work for introducing component selector method.
Javadoc edits.
Added @HasInternalProtocol
Renamed ModuleComponentSelector.getName() to getModule()
Temporary fix for breakage when build fails when used via 1.0-m7 tooling API.
Fixed merge problem.
Mark VisualStudio stuff internal/incubating
Mark incubating
Removed unused class.
Changed ResolveTestFixture to distinguish between project and module components.
Added some trace to hunt down occasional unit test failure on windows.