Changed the way errors are handled.

Everything is sent to MPD now, even if the command is bad. Instead of
throwing an error in the `MPDController` if something is out of range,
the command is sent to MPD and MPD will decide if the command is valid
or not. If it isn't, an error will be thrown with MPD's error style.

I stopped checking for errors before sending a command because of the
way error handling works with `Streams`. Instead of try catching
everything, you have to use a `catchError` or `onError` function. If I
was checking everything, and throwing exceptions, the user would have to
try/catch and specify the `onError` function.