Mask refactor

No more dependencies. Not even jQuery.
I've never written an end-to-end test before, so I'll need assistance rewriting the spec.

Big things to note about the refactor:
- $observe is set on the mask attr, so mask is fully dynamic.
- Model is now sent the unmasked value of the input. This is more useful, arguably, than the masked value for insertion into a database. Masking is a function of the display, not storage.

This is my first real directive I've written, so I'd love all the feedback I can get.
Thanks.