Added ability to specify arbitrary compression numbers, rather than one of a predefined set of compression names. This is to support user defined filters as described in https://groups.google.com/forum/#!topic/h5py/JqaBv98OGMs . This commit intends to follow the approach described by Andrew Collette.

In order to test compression numbers with gzip, had to refactor the legacy gzip compression values into a global on the `dataset` module. This allows the test to disable this special handling during the test.