Standardize code style
Add tests
Add usage example
Incorporate ngModelController