returning elasticsearch errors

Hello :) 

I ran into an issue related to a bad formed query, and I could not see the error sent by elasticsearch. This patch allows the caller to get the actual error sent by elasticsearch, and although it can be considered as not completely backwards compatible (since it now can return **{error, Status, ErrorMessage}** instead of just **{error, Status}**), it seems to be more useful this way.

Thoughts?

Cheers!