Java 8 compatibility!

Required upgrading ASM version, and changing three constructors.

But now we are here!