rename subscribe to addObserver