Changes to methods that normally loop to reduce calls to notifyObservers