AngularJS-ification of the Web front-end.

This seems to bring parity of functionality, with less boilerplate.

I also took the liberty to change the `/query` endpoint slightly, to avoid duplicating some logic in there.

/cc @sosedoff .. btw, thanks for starting this :)
It's recommended to use array dependency inject annotation. See examples in: https://docs.angularjs.org/guide/di . This will save you trouble when minify JS with generic JS minifier.