Added initial implementation of the annotation processor