ui-mask improvement

for issue #16 
* I exposed the maskDefinitions through a `value`, that can be extended at will, or by `ui-options` per element.
* Fixed a "global" variable leak `viewValue` (without var) while making the changes to the code. 
* Added more tests, everything is passing on Firefox/Chrome.
* Added more mask values by default, like only lowercase, lowercase and uppercase and 0-x (being x 0 to 9)

I already signed the CLA as Paulo de Oliveira Cesar