Approval refactoring

* Added validation on the `ApprovalGroup#status`
* Fewer instance variables
* More simplified/unified code path for going from controller to mailer when approving
Wow, you're right. Looking into this.