Add particles tally

Updated and refactored the Tally class to address some shortcomings, and added more tests.
You've got a lot of different whitespacing styles in this file. As far as I know "```if (<expression>)```" is recommended by the SG.