Bump up test-interface dependency to version 1.0-SNAP3.
Initial version that uses new framework API in test-interface 1.0:
-Changed usages and implementations of interfaces in org.scalatools.testing._ to use/implement interfaces/classes in sbt.testing._ instead.
-Added sbt.testing to interfaceFilter in TestFramework.createTestLoader method to enable loading of classes in sbt.testing package.
-Added FrameworkWrapper.java to wrap old framework implementations.
-Added code in ForkMain.java to serialize Selectors.
Changed ForkTests to call acceptorThread.join(), to make sure that acceptorThread is finished before Acceptor.result is called.
Made to ForkMain's write method synchronized, to ensure the output stream won't corrupt when test framework implementation uses multi-threads to write event back to sbt.
Changed createTeskTasks in TestFramework.scala to reuse TestRunner instance when running different TestDefinition.
-Changed behavior so that only a single Runner instance is used to run tests in multiple test groups.
-Added code to support remoteArgs in test-interface 1.0.
Added code to call Runner's done() method in both InProcess and SubProcess cases.
Added >1 framework class per framework support, this enables sbt to support both old and new framework API at the same time.
-Moved code that count test results from TestLogger to SuiteResult.
-Print the results in Tests.showResult.
Added support of custom summary message returned from Runner.done method.
Added code to tag test task using Array[String] returned from Task.tags method.
Added .gitattributes file.
Normalize line endings.
Added support of nested test tasks when tests are executed InProcess and sequentially.
Added support of nested test tasks when tests are executed in SubProcess.
Initial working version of makeParallel that support nested tasks.
Track public inherited dependencies.

There is a public inherited dependency on each (normalized) base
class of a public template (class, module, trait, structural type).
Record and persist public inheritance dependencies.

Includes placeholders for adding public inherited dependencies for Java classes.
Use public inherited dependencies in incremental compilation invalidation.

1. All parents of public/exported classes/modules/packages are tracked as
   'publicInherited' dependencies.  These are dealiased and normalized so
    that the dependency is on the actual underlying template and not the
    source enclosing the alias.
2. All CompilationUnit.depends dependencies are direct dependencies.  These
   include inherited dependencies.
3. When invalidating changed internal sources,
	a. Invalidate all inherited dependencies, transitively and include the
      originally modified sources,
	b. Invalidate all direct dependencies of these sources,
	c. Exclude any sources that were compiled in the previous step unless they
      depend on a newly invalidated source.
4. Invalidate changed external sources in the same way as #3 but remove the
   external sources from the final set.

Only public inheritance dependencies need to be considered because a template
that is not accessible outside its source file and that inherits from another
file can be handled as a normal, direct dependency.  Because the template
isn't public, changes to its API will not propagate outside of the source
file.

Several existing tests cover the correctness, especially:

1. transitive-a covers direct, transitive dependencies with inferred return
   types
2. transitive-b covers inherited, transitive dependencies with inferred return
   types

There are two new tests, one that tests that public inherited dependencies are
tracked and one that verifies the basic invalidation progression.
More tests are needed to verify the improvements that this algorithm brings:

1. Inheritance-related dependencies are processed in one step to avoid the
   otherwise unavoidable several steps.
2. Only immediate direct dependencies are ever processed, which should in many
   typical cases avoid large invalidation sets.
Push full transitive invalidation out a step since step 3 is now relatively cheap.