Pass arguments to LLVM::Target.init_native
Make LLVM::JITCompiler customizable

- Add options hash at last in #initialize
- Extract initialization into protected method `create_execution_engine_for_module`
Add MCJITCompiler
Refactor JIT compilers initialization

- Add LLVM::ExecutionEngine for common base class of JIT compilers
- MCJITCompilerOptions
Add ExecutionEngine::ModuleCollection
Add ExecutionEngine#functions
Add more documentation
Revert deprecated invocation style
Merge pull request #43 from ishikawa/mcjit-compiler

MCJIT execution engine