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.
I was thinking more of where docstrings are *seen* rather which functions they are tied to. If we stick it down into `_delegate_to_h5_file` then they won't appear with the correct functions in any documentation or editor tools or anything. IPython's `?` magic, etc.