Refactored add expense form