ARGO-308: initial implementation of client-side form validation.

include jquery-validation-rails gem in assets group.
include jquery.validate and jquery.validate.additional-methods in application.js build
add is_valid_role_list to apo controller and is_valid_role_list_endpoint for REST calls to check role list validity
add route for /apo/is_valid_role_list
add form validation script to apo register template
ARGO-308: remove debugging and TODO stuff
fix failing unit test
ARGO-308:  more form validation
ARGO-308: centralize collection creation code
ARGO-308: lots of refactoring to reduce repetition, minor fixes.
* fix misnamed variable in get_input_params_errors.
* better register and update error messages if js form validation lets in errors or is circumvented.
* centralize APO creation in register_new_apo and set_apo_metadata.
* other variable renaming for clarity, other typo fixes.
* whitespace cleanup.
* fix unit tests to be more precise and to align with the minor internal reworkings of the controller refactoring, DRY up just a bit, fix whitespace just a bit.
* etc.
Merge branch 'develop' of https://github.com/sul-dlss/argo into develop