refactor(API): Use custom errorResponse struct

The googleapi pkg provides an Error entity, but it
unnecessaryily serializes a field we do not use.
Creating an equivalent struct that we maintain
works around the problem while retaining the ability
for the client bindings to use googleapi.Error.
@jonboulle If we use the builtin googleapi.Error object, this is what our serialized errors look like. It's got a nasty Body field that we don't want.