Fixed classloading in tooling api provider so that int tests that use Launchable instances can be run in embedded mode.
Removed unused class.
Split the BuildInvocations implementation used by the consumer and the provider, so they can reference different types and don't need to be visible in both locations.
Moved DefaultBuildInvocations to live in the launcher project.
This doesn't need to implement TaskSelector any more.
Reworked DefaultBuildLauncher to do a better job of passing the original Launchable instance back to the provider.