Pass errors to the callback instead of throwing.

The commit 7b2e1d45a2bf17796755131df1cce6721d7d19ff introduced the throwing of errors instead passing them to the callback.

There is no way to catch these for api consumers. As soon as the kraken api returns invalid json the whole process goes down because of the uncatched error.

This pull request passes the errors to the callback as recommended by Node conventions and allows them to be handled.