Basic JIT

Ruby needs a JIT. This is a prototype of a template-based JIT that copies opcode implementation bodies to eliminate instruction dispatch overhead.

# TASKS

- [ ] Memory allocator for JIT code cache
- [ ] Count-triggered compilation
- [ ] Dispatch to JIT compiled code for a method
- [ ] Code-copying compiler
  - [ ] Calculate code size
  - [ ] Allocate code chunk from JIT code cache
  - [ ] Copy code
  - [ ] Handle branches (if, unless, getinlinecache, case dispatch)