make sure removing a connection from used does not fail

change the method from set.remove to set.discard, which
does not fail if the item to remove is not present.
Small fixes while bringing myself up-to-date

-wants_json redundancy removed (the method was defined twice)
-204 returns nothing (changes in cdmi)
-closes #59
Tests for request_wants
registration worker cleanup.

The actual steps will be reordered but i wanted to test the framework.
dictionary is not the right tool for the init
epic client added. Wokring on thests
initial tests for handle retrieval
config extended with handle options
config extended with handle options
refactor the test structure

integration tests can now inherit from the TestApi class,
which provides the app instantiation and a open_with_auth function.
expect a 403 error instead of a 401 on wrong credentials
add integration tests for the CDMI api

for now there are only tests for GETting a file or container
and the cdmi json structures are now checked for formal correctness.

this is still enough for the tests to fail.
use the abort() call in auth to allow use of errorhandlers
fix/refactor requests functions

- make cdmi match both -object and -container
- add convenience request_wants_cdmi function
- fix line lengths
many fixes to cdmi output

- add output buffering (experimental)
- add cdmi version recognition support
- change to adjust to changed request_wants functions
- add get_config_parameter function to get CDMI params
- add function to immediately reject a non-conform cdmi request
- immediately disallow cdmi requests with multi range
- fix valuerange parameter for range request
- return 403 (not 401) if credentials are wrong
- return correct cdmi version and content_type on GET functions
- fix line lengths
- use json.dumps() to prepare values for json output wherever possible
- add missing cdmi values
- add 403 error handler