Fixed an issue with the from(Reader) added a bunch of unit tests.
Remove Bad Filter Logic

This code was accidentally committed during exploration of groupBy/subscribeOn.
Merge pull request #887 from benjchristensen/filter-cleanup

Remove Bad Filter Logic
Revert Bounded ObserveOn
Merge pull request #888 from benjchristensen/observeOn-bounded-unbounded

Revert Bounded ObserveOn
Split SubscribeOn into SubscribeOn/UnsubscribeOn

Working with @headinthebox based on discussions at https://github.com/Netflix/RxJava/pull/869 and https://github.com/Netflix/RxJava/pull/880#issuecomment-35163539 we determined that there are times when `unsubscribeOn` behavior is needed.

The `subscribeOn` operator can not mix `subscribe` and `unsubscribe` scheduling behavior without breaking the `lift`/`Subscriber` behavior that allows unsubscribing synchronous sources. The newly added `unsubscribeOn` operator will not work with synchronous unsubscribes, but it will work for the targeted use cases such as UI event handlers.
Merge pull request #890 from benjchristensen/subscribeOn-subscriptions

Split SubscribeOn into SubscribeOn/UnsubscribeOn
Move Exception Classes to rx.exceptions

Eliminate dumping ground of rx.util
Move time based util classes to rx.schedulers

Eliminate dumping ground of rx.util
Update sub-modules
Move rx.util.functions to rx.functions

Eliminate dumping ground of rx.util
Remove rx.util usage from sub-modules

All sub-modules and tests building and passing
rx.util.functions deprecated proxies
Merge pull request #891 from benjchristensen/rx-util

Eliminate rx.util.* dumping grounds
Lift Performance

Using `f.lift()` directly instead of `subscribe` improves ops/second on the included test from 5,907,721 ops/sec to 10,145,486 ops/sec
Fix DebugHookTest as per direction from @abersnaze
Merge pull request #881 from benjchristensen/lift-performance

Lift Performance
Change Parallel to use Long instead of Int
Merge pull request #893 from benjchristensen/parallel

Change Parallel to use Long instead of Int
Synchronized Operator Check for isTerminated

As per https://github.com/Netflix/RxJava/issues/872 make Synchronized reject events after terminal state.
This class should not unsubscribe though. That is only for SafeSubscriber at the end.