refactoring form and obligating user to invoke bind method