Added "@Override" annotation to Client classes, added "Observer" pattern