Initial commit
UI rebuild to AngularJS

Also some other new features rolled in. This is not a particularly
atomic commit. A few API breaking changes, more to come in the near
future as the API is cleaned up and made more RESTful.
Merge branch 'master' into angular