Observable creation from Subscriber[T]=>Unit for Scala

This PR adds the `Subscriber` type, and `Observable.apply[T](Subscriber[T] => Unit)`.

Additionally, I made some tweaks in `RxScalaDemo`, and I could remove all comments of the kind `TODO something behaves weirdly here`, because now the weird behavior was gone. Seems like there was some progress in RxJava core :-)

Sorry that this PR mixes several topics, let me know if you want me to split it by topic.

/cc @headinthebox @vjovanov