testing out observer pattern