refactored add/modify dialogs; added up/down move handling in model