Put global declared objects (attribute creator) into the anonymous namespace

The problem here is that if you use the same attribute name in two compilation units (which is likely), the linker will fail on duplicated symbols error, because of the globally declared objects. Putting them in the anonymous namespace makes it work.