ImmutableCollections: include the key in the "duplicate key" exception message

This makes the exception message much more useful in log files.
Disable the NuGet cache when installing Microsoft.DotNet.BuildTools

Fix #206
Add System.Console Product Code
Adding csproj, sln and package.config files to System.Console library
Update README.md

Added System.Console
Merge pull request #217 from richamsft/master

System.Console OSS work
Respond to code review feedback
Fix /property:OS=Unix build of System.Console

Some resource strings got lost in the move to GitHub.  There was also an inconsistency with the available NuGet packages and where SafeHandle lives.
Fix vector tests warnings about obsolete Marshal.SizeOf

The System.Numerics.Vectors tests were causing build warnings like the following:

Vector2Tests.cs(15,29): warning CS0618: 'System.Runtime.InteropServices.Marshal.SizeOf(System.Type)' is obsolete: 'SizeOf(Type) may be unavailable in future releases. Instead, use SizeOf<T>().

This changes does exactly that.
Add System.Runtime.Handles reference to System.Console
Merge pull request #185 from akoeplinger/key-in-exception-message

ImmutableCollections: include the key in the "duplicate key" exception message
Merge pull request #210 from PatrickMcDonald/buildtools-cache

Disable the NuGet cache when installing Microsoft.DotNet.BuildTools
Merge pull request #221 from stephentoub/fix_vector_test_warnings

Fix vector tests warnings about obsolete Marshal.SizeOf
Merge pull request #220 from stephentoub/fix_console_unix

Fix /property:OS=Unix build of System.Console