Started removing legacy code
Changed Platform.NET minimum version to 4.0. Removed more legacy code
Got unit tests running with Platform.NET changes
More code tidyup
Merge remote-tracking branch 'origin/removing-legacy-code'

Conflicts:
	src/Platform/TypeUtils.cs