Updated with  note about model notifying listeners on change