Changed not to use aspectj so that it is easier to get started.