Initial implementation of Group-to-Group Scattering reaction rates

- Added "GROUP_RATE" type of tally in Tally.h. Added tally sub
  class: IsotopeGroupRateTally(..) etc.
- Added functions in Tally.cpp to tally Sigma_s / Sigma_t at
  each collision. Also implemented tallyGroup(..) methods that
  tallies the weight into the bin corresponding to (old_energy,
  new_energy).
- Updated TallyFactory.cpp.
- FIXME: Tally::outputBatchStatistics(..) seems to report that
  _num_bins = the real energy bin \#^4, and I expect it to be
  squared. I don't really know why, so for now I am taking sqrt
  twice, but I need to figure out why this is happening.
Implemented Outter scattering reaction rates.

The results (in 5 equal log energy bins) seem to suggest the low
enregies have lots of out-scattering, whereas the high does not.
This might be a bug that need to be fixed.
add two test python cases