Simplify error reporting

The Gerrit::REST::Exception was an attempt to provide strutured
exceptions for this module. But its implementation and usage was
becoming more complex than useful. So, we get rid of it and change the
interface so that now error messages are consistently formatted and
thrown using Carp::croak.
Remove uneeded dependency on Data::Util
Improve documentation