Cleanup: use regular templates in .tcc for Attribute, Variable
Created by: germasch
For some probably historic reason, in the core and cxx11 bindings, Attribute and Variable don't define their member functions in the .tcc file as usual, but do so in the .cpp file. They don't actually define functions of the templated class, but rather specializations for every single type, using the usual macro trickery.
While there is need for macro hackery in other parts of the code, there is no need here, so this PR cleans things up to follow the usual guide lines. There are no actual code changes, other than getting rid of some unneeded wrapping (in separate commits).