Element: Use unsigned type for A,Z
Move Element constants to executable tfdh

Previous code instantiated one copy of each Element::X for each
compliation unit. New code avoids this by only defining the constants
in the executable.

If other code files need access to Element constants in the future,
this code will have to be moved back into a new file.
Gfdi: Cleanup and c++11-ify
GslFunction: Remove unneeded const
Gfdi: Use ++x increment in loops for consistency