CS 356 Class Extra Credit - Implementation of Observer Pattern using java.util