More work on the Observer class