progress on refactoring view/edit/add opportunity