Add missing methods to Scala Adaptor

This pull request adds a method to the Scala Observable for each method in the Java Observable. Some were renamed, have a different signature, or were left out intentionally. A comparison can be found [here](https://github.com/samuelgruetter/rx-playground/wiki/Comparison-of-Scala-Observable-and-Java-Observable). 

The Scala Observable should now be complete, but there are still some [TODOs](https://github.com/samuelgruetter/RxJava/blob/a2ab731ce1a867e1a2902c27062bcea2923ef303/language-adaptors/rxjava-scala/TODO.md).

There should be no breaking changes, but only additions.

There's also an automatic completeness test (`rx.lang.scala.CompletenessTest`). If methods are missing, it still succeeds, but it prints the missing methods to stdout.