Refactor to support update w/ acceptance tests