Add onDispose method

A convenient method for cleaning up resources allocated when creating an Observable. I use this all the time, figured it's a candidate for core. I'll complement with tests if we want to include it.