Fix logistration Jasmine tests

> For three days and three nights he labored, and lo! A great multitude of tests, which no man could number, appeared before him.

Jasmine tests aside, this includes several bug fixes caught during the course of test writing, wide-randing general clean-up, and adds [js-url](https://github.com/websanova/js-url), a lightweight URL parser. We're missing test coverage of the form validation login and the enrollment interface, but