MaterialLibrary class, Material JSON I/O, and some nuc_data fixes

This adds a MaterialLibrary class for handling collections of materials.  In the process, I also added a JSON persistence mechanism for both the basic Material class.  I also discovered and fixed some nuc_data issues with the PNNL data, so this may trigger a rebuild.  The MaterialLibrary supports both HDF5 and JSON persistence mechanism.  

Since @elliottbiondio is out of town for the next couple of weeks, maybe someone else can take a look at this.  Thanks!