Do not generate name for pseudo-anonymous PODs
Use symbolic annotation names instead of strings

This makes Python parser catch typo for us.