Aspect Oriented Programming (AOP) for Ruby