subscribeOn + groupBy

Some changes on top of https://github.com/Netflix/RxJava/pull/864 as part of work on https://github.com/Netflix/RxJava/issues/844.

Primarily I did two things here:

- get unsubscribe working again via `subscribeOn` for synchronous `Observable`s
- leverage new `subscribeOn` behavior to make the `groupBy` unit tests work