Refactor ErrorFrame response in order to expose ErrorFrame message bodies.

So this a precursor to solving issue #160. In order to detect which query in the batch failed, you need to get the prepared statement id which is part of the error frame. Currently gocql discards this data. This refactor exposes the various error message bodies on an error as defined section 8 of the v2 binary protocol (also backwards compatible with v1).