Add method Annotated.annotations() to allow efficient iteration over all annotations, without exposing mutable state