Add object annotations, retained at runtime

Annotations can now be placed on object constructors with the syntax
'object is ... {} ', and the annotation objects will be stored in the
object's internal structure. They can be retrieved using the mirrors
module and the 'annotations' method.