LRA Bug Fix, Error Messages, and Scattering

I made some bug fixes and slight improvements, including:

- LRA.py bug fixed.  This was a relic of the change from 0-based to 1-based indexing in the getters and setters for group-wise cross sections.
- A large portion of the error messages for getting and setting cross sections had parameters out of order or the wrong number of parameters.  All fixed.
- For group-to-group scattering, all "group1" and "group2" were renamed to more intuitive "origin" and "destination".  A consistent convention of (origin,destination) is used for all routines.
- Inline function for getting the scattering cross section by group was introduced.  This keeps all the logic for how the scattering matrix is stored in one place (at least for getters, maybe the setters could use a similar fix).
- Better error messages are thrown when files sent to materialize don't exist.

Actually, these are not the "indices" per se, but rather the energy groups, correct? (in Fortran they would be the indices, but not in C++). Perhaps change to "the incoming energy group" and the "the outgoing energy group"