Avoid implicit uses of RxApp.MainThreadScheduler

This pull request currently is meant to foster discussion about which are the implications of this kind of change, and whether it would be better or worse for ReactiveUI.

My first ramblings can be found at #425. 

Right now this branch works perfectly on the simulator for everything I've tried (of my code, obviously), and fails even to start the app on the device.