Make Cocoa view sources non-generic

While the design in #448 is far-and-away better from a code perspective, it doesn't work because Cocoa objects can't be generic (i.e. anything that exposes an interface to Objective C). Peep http://docs.xamarin.com/guides/ios/advanced_topics/limitations for the details.

/cc @jlaanstra who fought the good fight but didn't realize how much Objective C sucks