Refactor group and node manipulation from H5File down into H5Group

This PR allows H5Groups to create and remove subgroups directly without requiring the user to manually dig out `_h5_file`.

It also extends the behavior of most functions creating new groups and nodes to also return those nodes.
Oh right, IPython... Would it make sense to use a decorator that pulled in the docstring from `H5File` for each forwarding method in `H5Group`? Then `_delegate_to_h5file` could just explain itself and not worry about who calls it?