Fixed a segfault in H5ID destructor + userblock bugfixes/tests + debug(log) mode

- Added debug(log) mode which dumps all HDF5 error info to stderr
- Explicitly check for positive refcount before decreasing it in H5ID.~this()
- Fixed a bug where the userblock size wasn't validated properly (a/w-/x)
- Added various tests for userblock