initial attempt at implementing periodic schedulers as discussed in #228, needs some testing next...
Moved state to Observer from Observable
manually merging master in...
fixing the scheduler methods to fit the new pattern
taken over default recursive implementation
Fixed scheduler javadoc, and one single unnecessary cast in takeWhile
Merge branch 'master' into multisubscribe

Conflicts:
	rxjava-core/src/main/java/rx/operators/OperatorGroupBy.java
Merge branch 'master' into multisubscribe

Conflicts:
	rxjava-core/src/main/java/rx/operators/OperatorGroupBy.java
Fixed a bug in the test scheduler that happened when advancing time by a too little amount
Fixed millisecond/nanosecond confusion in test scheduler, fixed schedulePeriodically to use now() instead of System.nanoTime() and added a test against scheduling periodically
Tested unsubscription, too
switched OperationInterval implementation over to use periodic scheduling
ExecutorScheduler now uses scheduleAtFixedRate instead of recursion when possible.
Removed unused imports.
Add flatMap alias to mapMany

This is to match with what Java 8 is adding to Stream so we support the duality of Iterable/Collection to Observable.

http://download.java.net/lambda/b86/docs/api/java/util/stream/Stream.html#flatMap(java.util.function.Function)
Initial implementation of AsyncSubject
Observable.toFuture
Merge pull request #247 from benjchristensen/flatMap-alias-to-mapMany

Add flatMap alias to mapMany
Merge pull request #245 from mairbek/multisubscribe

Moved state from Observable to Observer
Merge pull request #246 from jmhofer/schedulePeriodically

Scheduling actions periodically