Feature/angular config settings

Ideas on how to move some stuff out of the controller welcome, although I think most of it is controller logic.

Going to try to add a few tests for some of the controller methods, didn't want to hold up review though.
Are the guards here supposed to protect from nulls? It looks like if the values were null it would still cause an exception.