Counter Class
public Counter(int max) {this.max = max;}
public void reset() {val = 0;}
public int getVal() {return val;}
// must notify observer the model has changed
public void setVal(int val) {…}
// Observer-related methods
public void registerAsObserver(CounterObserver observer){…}
private void notifyObserver() {...}
CounterObserver observer;