Made promises handle errors
Merged Emitter class into Observable