Changes in v3.6

This version of NCrunch introduces changes to the grid protocol. This means that grid node servers
must be updated before they can be used with the new version.

Fixed an issue where the .deps files for .NET Core projects referencing .NET Standard projects were not being generated correctly. This was causing
such environments to fail to correctly initialise, giving IPC and other runtime exceptions when trying to analyse assemblies or run tests.

Stopped NCrunch from running 'dotnet restore' when loading .NET Core/.NET Standard/CLS projects. NCrunch will still run this command when executed
using the console tool for .NET Core and .NET Standard projects. This change has resulted in the following:
- NCrunch will no longer strip project/package changes that are in-memory in Visual Studio when the engine is running. This was happening because
'dotnet restore' was touching the project files and causing VS to reload them, discarding in-memory changes.
- Initialisation performance has been improved, because 'dotnet restore' can sometimes take several seconds for each individual project
- It is less likely that project load will fail due to 'dotnet restore' concurrency issues, though there is still a risk if VS runs this command
while NCrunch is busy loading a project
- There should be less problems now with 'dotnet restore' timing out or kicking up errors when this is run for CLS projects.

Added handling for projects with multiple target frameworks. When NCrunch encounters these, it will internally duplicate the projects to create
separately targeted versions of them. These duplicate projects and their child tests will be shown with a target framework suffix in the Tests Window.

Fixed NCrunch unable to detect some earlier versions of .NET 4.6.2.

Fixed NCrunch failing to detect changes made by some refactoring actions.

NCrunch will now monitor the project.assets.json file, reloading any project for which this file changes. This has solved several synchronisation
issues related to NCrunch not detecting project changes to .NET Core/.NET Standard/CLS projects inside VS.

Fixed an issue where projects built to target .NET 4.6.2 using the new implicit VS2017 build system were not having the copying of their referenced
assemblies correctly suppressed. This was causing downstream problems such as NUnit being unable to find tests in these projects.

Added a sensible error message for when NCrunch is used with a netstandard test project, because such a setup doesn't make practical sense and was
causing obscure downstream problems.

Introduced several workarounds for problems related to the IDE making several broad file system changes when saving .NET Core/CPS source files.
These problems would cause NCrunch to reload the projects involved, erroneously thinking that they had changed.