Scheduler Plugin Refactor

1) Deprecate Direct Access to Scheduler Implementations

This enforces the convention of using `Schedulers.*` and then makes the RxJavaDefaultSchedulers plugin more reliable.

2) Scheduler instances should be or behave like singletons

Remove the Func0 factory signature for Scheduler creation.