Tighten up error handling a bit.

Commands passed invalid parameters now raise ParamError.

The server layer now sends errors as JSON.
Implement view layer and set-position.

More disparate commits I'm afraid =(
Merge branch 'master' of github.com:UniversityRadioYork/bra

Readme change merge