User Module initial PR

Warning 42 commits ahead.

<!---
@huboard:{"order":69.75,"milestone_order":2.4375,"custom_state":""}
-->

This is a global variable, it should be `var profile = ...`