Ditch exception catch on root fetch at GraphDatabase.__init__()

As per https://github.com/versae/neo4j-rest-client/issues/65, current
behaviour when auth fails is that a 401 StatusException is raised, and
caught by this try/except block and a misleading NotFoundError is raised
in its place - lets just let the StatusException through. Unsure about
what other Exceptions may be raised but cannot reproduce.
Merge pull request #66 from doismellburning/handle_auth_denied

Ditch exception catch on root fetch at GraphDatabase.__init__()
Thanks to @doismellburning.
Adding support for retrieving index elements in a transaction
Test case for issue #69
Fixed issue #69
Merge pull request #70 from panisson/transaction_split

Transaction split
Thanks to @panisson
Test #68
Support keep-alive / pipelining

- httplib now instantiated on module load not per quest
- this also fixes caching, when the CACHE option was set a no-cache
  header was added that by passed the cache system
Merge pull request #71 from robinedwards/feature_keep_alive

Support keep-alive / pipelining
Thanks to @robinedwards
Pass correct url to get

- Get with missing '/' was causing an additional 302
Read test db url from environ
Custom cache store support

- Allow user to configure own cache engine, (e.g djangos cache)
Merge pull request #72 from robinedwards/feature_cache_store

Feature cache store
Thanks to @robinedwards
Cache extension requests

- every time extension is used a get request is made before post this
  only needs to happen once per extension
Merge pull request #73 from robinedwards/feature_cache_extensions

Cache extension requests
Thanks to @robinedwards
Fixes #64, added a small unicode check
Fixes #74. Added the new .query() method and casting for returns. Also a very initial .filter method with an special Q object for composing complex filters
Improving stability of tests
First implementation of complex filtering and slicing for nodes based on Cypher
Adding order by and filtering for relationships