User Module initial PR

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

Ive now split the check in two.