[CLIENT] Deserialize response based on `request.headers` not "body inspection"

Related: elasticsearch-py@05c4eef
[API] Load `elasticsearch-transport` gem from disk, when it exists
[API] Added the "match regex" feature in the YAML test runner

Added the ability to test Elasticsearch responses against
regular expressions.

E.g. the Cat API call like `client.cat.count` returns:

    1391968970 19:02:50 0 \n

and should match this regular expression:

    /^  \d+  \s  \d{2}:\d{2}:\d{2}  \s  0  \s  $/

Ie:

    client.cat.count =~ /^  \d+  \s  \d{2}:\d{2}:\d{2}  \s  0  \s  $/mx

See: https://github.com/elasticsearch/elasticsearch/blob/88771fd/rest-api-spec/test/cat.count/10_basic.yaml#L26

Related:

 * elasticsearch/elasticsearch#4943
 * elasticsearch/elasticsearch@88771fd
[API] Added the Cat API, incl. tests and examples

See: http://www.elasticsearch.org/guide/en/elasticsearch/reference/master/cat.html