QueryBuilder
fixed namespace collision
psr2 coding standard
no shortcuts
Introduced Bool filter cache and cache key parameters support
Avoid remove previously added params where add a suggest to the query

When we add a suggest to the query (while wanting to keep the query part
of the query), the query and all the previoulsy added parameters where
removed.

Like in the unit test, if we add the query (or the size) then the suggest,
the query (or the size) is removed. But if we add the suggest then the query
(or the size), the query is still present.

So insted of removing all the params, we merge the suggest with the
existing parameters.
add missing changes.txt for #726
Update changes.txt

Update changes.txt
Merge pull request #726 from agallou/suggest_query

Avoid remove previously added params when adding a suggest to the query
Add missing pull request ids
Added transport to support egeloen/http-adapter

Supporting [egeloen/http-adapter](https://github.com/egeloen/ivory-http-adapter) will
allow to make http calls using  multiple libraries (including Guzzle3) :

* Buzz
* Cake
* cURL
* FileGetContents
* Fopen
* Guzzle
* GuzzleHttp
* Httpful
* React
* Socket
* Zend1
* Zend2

Here is an example of how to use it :

```php
  $guzzle3 = new \Guzzle\Http\Client();

  $httpAdapter = new \Ivory\HttpAdapter\GuzzleHttpAdapter();
  $httpAdapterTransport = new \Elastica\Transport\HttpAdapter(null, $httpAdapter);

  $elastica = new \Elastica\Client(array(
      'connections' => array(
          array(
          '   host' => 'localhost',
              'port' => 9200,
              'transport' => $httpAdapterTransport,
          )
      )
  ));

  var_dump($elastica->getIndex('livre')->getType('livre')->getDocument('9782212136777')->getData());
```
allow to customize the key on a range aggregation

The range aggregation allow to customize the key for each range :

The documentation about this could be found here :
http://www.elasticsearch.org/guide/en/elasticsearch/reference/master/search-aggregations-bucket-range-aggregation.html#_keyed_responsea

Now, the Range aggregation class has a thrird (optionnal) parameter to the `addRange` method
to passe the range customized key name.
test for Version classes: there must be a DSL definition for each supported method
changes.txt
Merge pull request #728 from agallou/range_key

allow to customize the key on a range aggregation
rename methods according to project conventions
Flattr Button added to README
Merge branch 'master' into QueryBuilder

Conflicts:
	changes.txt
added test for DSL classes
changed geo_shape_preIndexed to geo_shape_pre_indexed