"channels" param for POST to _changes is a string, not a []string

Also added better handling of JSON parse errors -- they're now returned
from REST API as 400 status, not 500.

Fixes #293