bug(ui.mask): change required check in parser

This bug occurs when a control is meant to be masked but not required. You can reproduce the error [here](http://plnkr.co/edit/Szgygfocqh4UzJPhijtA?p=preview).

Before the parser checked to see if the controller$error.required was defined. If so, it would set the required validity to false. This doesn't work if ng-required is used, because the control could have been required at one point and is no longer required. Instead this checks if the elements attribute object contains a required property and if said property is true.

BREAKING CHANGE: if you rely on ui-mask to invalidate an empty viewValue this will no longer work. Please use the required attribute or ng-required directive to specify whether the input is required.