Add error handling

Raises custom errors when Basecamp requests fail with HTTPUnauthorized or InvalidRequestError.
Also updated to ruby version 1.9.3
Sorry, actually not needed, but I changed the requirement  from '~> 1.8.7' to >= 1.8.7
Otherwise could not install the gem locally with newer ruby.