Cleanup build warnings and memory leaks

This PR, removes all build warnings except for the one from PETSc. It also fixes memory leaks from valgrind. A valgrind suppression file was added to hide non-memory leak errors from HDF5 create/open routines that we do not have control over. 

There are still 4 memory leaks present in the petsc valgrind debug build, but I think the problem is on valgrind's end. It complains about a user tally not being deallocated even though it is. There could be some other issue behind this, but I currently cannot track it down.

I will post results on the testing dashboard for tomorrow under prefix memclean. (http://openmc.mit.edu/cdash/index.php?project=OpenMC)