Implement System.ComponentModel.VersionConverter (dotnet/corefx#28516)
* Implement System.ComponentModel.VersionConverter
VersionConverter is a new System.ComponentModel.TypeConverter subclass that handle conversions between string and System.Version.
* Fix tests build for VersionTypeConverter
* Use Version.Parse() instead of new Version() to save an allocation
* Add test data to ensure that the version string is trimmed
* Call base class implementation instead of explicitly throwing
* Always throw a FormatException when a version string is invalid
Commit migrated from https://github.com/dotnet/corefx/commit/
a5c7e7295ac2e3c889d347d0285794266797db87