Smarter AngularJS forms for reacting to submission states