[Core] Add internal test runner
[Unit tests] Added custom runner add-in

MD unit tests are now run using a custom runner.
When running inside MD, the custom custom runner
in MD.Core is used. When outside MD, mdtool is
used to invoke the custom runner.

Add-in assemblies are not local-copied anymore
in the test dir. This is not necessary because the
custom test runner loads the add-ins before
loading the test assemblies.

If new add-ins are referenced in the tests, then
the add-in references must be added to the file
MonoDevelop.TestRunner.addin.xml.
Add new project test runner project
Add missing NGit reference.
Include 'tests' dir in the add-in search path
Fix failure in unit test

When running the unit tests, typeof(ProjectBuilder) is
returning the type from one of the version-specific msbuild
assemblies, and we end getting the wrong path to the
msbuild runner.
Fixed case of boolean properties in test project.