Python AOP Framework