Make intrinsic method always generate value of expected type on stack

IntrinsicMethod.generate()'s return value is 'StackValue.onStack(returnType)'
and will be dropped
Reorganize JVM intrinsics

Make IntrinsicMethod an abstract class, coerce the resulting value of the
intrinsic to the expected type
Minor, NotNull annotations