Added simple AOP implementation