Update todomvc dispatcher to match docs, add AppDispatcher test