Server posts and Angular model initialiser

* Removes Javascript submit button actions, so submits now follow traditional server post
* Adds `ng-initial` directive, to cleanly scrape the DOM by adding attributes ([see here](http://stackoverflow.com/a/17823590/358173))
* Adding attributes to existing hidden inputs used by server to carry data between pages
* Adds `ng-controller` to initialise Angular on step-3
* Restructures model to mirror server
* **Fixes expected values from tests - notably they were including `childcare` instead of `child_maintenance` as committed spend, and also including `rent_and_mortgage` where it shouldn't have been**

*These changes only affect affordability calculator for now.*

Needs a thorough review from @darokel :)