Make observers async; make model.reset() blocking