fix simple remapper annotation attribute owner
the docs for SimpleRemapper say it's internalName.attributeName
but it's actually Ldescriptor;.attributeName
for annotations
it also can't remap Enum values in annotations
So this MR fixes that and adds tests for it.
enum values need their own method because they are actually constructed with Enum.valueOf
and so need to match the string value of the enum value, not the actual field name. this is useful when remapping a reference to an enum to a completely different enum. since in that case, the values may be different and so need to be transformed.
Edited by William Gray