Pass on server error messages when raising BadSyntax exceptions

The ArangoDB server sends back some very useful error messages but these are not included in the BadSyntax exception message. This change allows the error message to be used.
Now when running a query with a syntax error we get the following:

````
db.query.execute('FOR t IN TRAVERSE(imdb_vertices,
imdb_edges, "imdb_vertices/759", "outbound", {maxDepth: 2}) FILTER
t.vertex.genre == @foo RETURN t', bindVars: {"foo" => "Comedy" }).to_a

Ashikawa::Core::BadSyntax: 1540: usage of unknown function 'TRAVERSE()'
````

There was one test that needed to be modified to allow this to happen. The mock request was returning an empty string which ended up as nil and caused problems with the ErrorResponse#error method.