Add a bunch of Observable extensions and unit tests