Adding utility functions for observables of strings useful for processing non blocking IO.

I started developing this for use with the rxjava-apache-http contrib module to safely and scalable decode infinite observables of byte arrays into strings but thought it should live in core because it could be useful for non blocking disk IO.

I did not make this part of rx.Observable because these operators only work on observables of string. The drawback is that discoverability will be harder.