Nuclide UI type

This adds a new `nuclide` uitype state variable annotation.  The purpose of this is so that users can write human readable nuclide names ('U-235') and then these are converted to the nucid format before being written to the database or set on a prototype agent.  

It also clears the way for more code generation with respect to the uitype key.  Finally, while I was there, I cleaned up some of the code generators and in particular the infiletodb query calls.

Tests are included in this PR an documentation has been pushed to cyclus/cyclus.github.com@8376e26