Having fun with Java Bytecode Manipulation, thanks to http://www.infoq.com/presentations/asm-cglib-javassist (Ashley Puls)