Support multi-member annotations.

The controversial part of this PR is likely the testing strategy of `AnnotationWriter`. Not sure if you had ideas on how to test writers without a whole infrastructure of `JavaWriter` (and descendants) but this was my quick solution to get it working.