Fields and widgets should be providers for easy extension.
Rewrite directive to use provider code instead
Add password field and widget in user module
Add logger to user admin page.
Use content form for user add page
Clean up template
Use content form for user view
Add a logger to user admin function in example.js