Fix ASM 4.0 usage for Java 6 and above

In order to get ASM 4.0 to work correctly:
- Use proper cv.visitXXInsn; with frames we cannot just call visitInsn
(e.g. ALOAD_X).
- Use Detector to implement ClassWriter#getCommonSuperClass because
generating frame info needs this.
- We generate the stack map frames in kilim.tools.Asm#write necessary
for the new Java bytecode verifier.
Credits go to Kresten Krab Thorup.
Merge branch 'master' of https://github.com/andrewdbate/kilim