Moved NuGet integration into separate package

This adds a new package ScriptCs.NuGet which acts as the integration between ScriptCs.Core and NuGet. This means ScriptCs.Core no longer has a dependency on NuGet.Core.

* I had to add a NullInstallationProvider and NullPackageContainer since the tests barf if ScriptRuntime doesn't wire up concretes for IInstallationProvider and IPackageContainer
* Similarly to ScriptCs.Hosting, the new project has a default namespace of ScriptCs.NuGet but the namespace of the types that have been moved from ScriptCs.Core remains as just ScriptCs. I'm not sure what the preference of the core team is here but I'm happy to add another commit which changes their namespace to ScriptCs.NuGet if required.

This is a partial implementation of https://github.com/scriptcs/scriptcs/issues/335.