Improve HDF5 finding, make many self-tests optional
While normally new users or new systems should have all self-tests run, to save build time we add the option to disable many self-tests with cmake -DBUILD_TESTING=off. If any problem is experienced, it's best to use self-tests as they tell more specifically where the problem is occurring.
HDF5 finding behavior improved.