RxScala: Add backpressure support

As per #1603.

/cc @headinthebox, @samuelgruetter
Since `requestMore` is private, I'm okay with it. I do this trick in some places as well. It's better to have this trick sometimes internally though than make request() public as generally we don't want external access to request().