System.Void as type param was a Mono <2.11 bug; replace with [new] Unit

Void [invalid bytecode bug](https://bugzilla.xamarin.com/show_bug.cgi?id=3571); patched in mono/mono@197b3010ded36e63729bc26c573b90511f846595, which was released with Mono 2.11.0.

I add `XSharpx.Unit`, though it'd be nicer to just use F# Unit.