simplify api by start'ing and stop'ing in a custom observable