attempt to implement observer pattern take 1

attempt failed