Add angular.min.js in js/angular subdirectory in webapp.
Modify(register.html): add external script "js/angular/angular.min.js".
Add(register.js).
Add(userform.tpl.html).
Refactor(register.html): move form html to userform.tpl.html and load it with ng-include.
Add(angular.min.js.map).
Modify(GuiceServletModule): change filtering to be only through "/" address; remove commented-out bindings.

Refactor directory common/register/: rename to common/userform/
Refactor(register.js): rename to userForm.js; rename module from 'Registration' to 'UserForm'.

Modify(userform.tpl.html): add validation to form input fields.
Modify(register.html): make form container narrower; add styling to the buttons.
Add(UserService).
Modify(register.html): move FormCtrl declaration to the panel.
Fix(userform.tpl.html): fix regex pattern strings.
Modify(userForm.js): implement success and error methods of $http.post.

Refactor(UserService): rename to UserRegistrationService; change service url to '/user/register'.
Modify(UserRegistrationService): add Reply-ing on success and on UserNameExistsException.
Add(UserDTO).
Modify(userform.tpl.html): use ng-repeat to generate validated fields.
Modify(userForm.js): add 'formFields' factory.
Modify(userform.tpl.html): move select inside ng-repeat group.
Modify(userForm.js): add field item for select; put formFields.fields to data elements.
Modify(userform.tpl.html): abandon generating form fields with ng-repeat - define fields staticly.
Modify(userForm.js): remove factory 'formFields' - use formData and formErrors for storing input data and for error messages.
Modify(userForm.js): add function validateField to factory formErrors; add flags submitted and usernameExists to factory formData.
Modify(userform.tpl.html): use the validateField function to shorten the validation checks.
Refactor(register.html): move to frontend as toplevel page and rename to register.tpl.html.
Refactor(userForm.tpl.html and userForm.js): move to frontend - in common/userform/ directory.

Add(register.js): 'bankApp.register' angular module.

Remove js/angular/ directory from webapp.
Modify(register.js): add TODO as reminder to investigate grunt building to two html pages.
Refactor(register.tpl.html): move to src/ directory; rename to register.html.
Refactor(register.js): move to src/app/ directory.
Add(containers.less): custom adjustment styles for bootstrap containers.
Modify(register.html): remove style definition from <head>; add the 'RegisterCtrl' as the ng-controller for the page.
Modify(register.js): remove unneeded config for the module; remove dependency modules 'templates-app' and 'ui.router'; remove resolved TODO notes.
Modify(build.config.js): add 'src/register.html' to html file list.
Modify(Gruntfile.js): add copy action for register.html in 'index' multitask.
Refactor(userForm.js): move 'FormCtrl' logic to register.js 'RegisterCtrl'.
Modify(register.html): remove ng-controller directive from panel; add container top margin.
Modify(package.json): add karma-phantomjs-launcher to devDependencies.
Modify(karma-unit.tpl.js): use the phantomjs-launcher instead of firefox-launcher.
Add(RegistrationDetailsDTO).
Modify(register.js): change http post address to '/registration'.
Modify(SitebricksConfiguration): change UserRegistrationService address to '/registration'.
Modify(UserRegistrationService): use RegistrationDetailsDTO instead of UserDTO.
Modify(bower.json): switch angular version to 1.3; add dev dependency 'angular-messages'.
Modify(build.config.js): add angular-messages.js to vendor_files list.
Modify(userForm.js): use compile function in directive 'validatedFormField'; add directive 'usernameValidation'.
Modify(userform.tpl.html): apply directive validatedFormField on input element.
Modify(userForm.js): add 'ngMessages' to module dependencies; add required and length validators to directive 'usernameValidation'.
Modify(userform.tpl.html): add ng-messages to 'testField' form-group.
Fix(build.config.js): fix path to angular-messages.js
Modify(userForm.js): append the contents of the element to the generated html of the validatedFormField directive.
Modify(userform.tpl.html): change element of validated-form-field to be a div; move ng-messages group into the div of the validated-form-field.