Add particles tally

Updated and refactored the Tally class to address some shortcomings, and added more tests.
No problem :)
On 09/26/2014 02:48 PM, Anthony Scopatz wrote:
>
> In pyne/cpp_particle.pxd:
>
> > +    std_string mcnp6(int) except +
> > +    std_string mcnp6(char *) except +
> > +    std_string mcnp6(std_string) except +
> > +    # fluka
> > +    std_string fluka(int) except +
> > +    std_string fluka(char *) except +
> > +    std_string fluka(std_string) except +
> > +    # name
> > +    std_string name(int) except +
> > +    std_string name(char *) except +
> > +    std_string name(std_string) except +
> > +    # describe
> > +    std_string describe(int) except +
> > +    std_string describe(char *) except +
> > +    std_string describe(std_string) except +
> > +
>
> Yeah, so we went through this with nucname where we had 
> format-specific names and then we kept changing what default format 
> was. This meant that users and developers kept having to change their 
> pyne-dependent code every time we changed the format. It was a lot of 
> extra work. Moving to id() let us change the format without changing 
> the usage sites. Even if we never end up changing the format, I think 
> it is a good idea.
>
> Also, this will make it more consistent with the other namespaces. 
> Someone coming to particles from nucname or rxname will know what to 
> expect.
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/pyne/pyne/pull/531/files#r18109819>.
>