Rewrote add/sub/mul with overflow opcodes to use LLVM *.with.overflow intrinsics.
Properly merge stacks even if object/ref types are differents.
Class: Separate RTTI type creation definition and global creation.
Generate a few additional external types for tests, such as Exception/InvalidCastException.
Added overflow tests for integer arithmetic.