Merge #15 (closes #14). Updated target_test.rb.
Merge ruby-llvm/ruby-llvm#16

Added fixes for scalar transform symbol names.

Squashed commit of the following:

commit 92321f5660183700aa03c58f90e1a6b2fa58bbd5
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Tue Jan 22 00:48:58 2013 +0400

    Add constant int_to_ptr and ptr_to_int.

commit ed0389f30d6f5c7a61f346f4bbab12d484b6c5b7
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 15:11:22 2013 +0400

    Reword the JIT passage in readme.

commit 1a61cf7e2adfd99f39dfa369fe9e9cb49ab6f2a0
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 14:56:10 2013 +0400

    Add missing nsw/nuw instructions (ruby-llvm/ruby-llvm#10).

commit 969a04427ef133424d174294334d7f5cbb583a40
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 14:46:03 2013 +0400

    Add missing arithmetic operations on constants (ruby-llvm/ruby-llvm#10).

commit e69d2db7334512a6bd6abd5dd9710d24af4fee55
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 14:31:46 2013 +0400

    Add missing indirectbr instruction (ruby-llvm/ruby-llvm#10).

commit 2a7b342b126cf7a94d907a197f7e34b29ebefe1c
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 13:59:42 2013 +0400

    Add missing scalar and IPO passes (ruby-llvm/ruby-llvm#10).

commit e619a834b925cbe647cd46a92975ce4183a8701e
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 13:18:44 2013 +0400

    Remove stray comment.

commit 6dcebc12399c81d782b83e32b05b5920332e733c
Author: Peter Zotov <whitequark@whitequark.org>
Date:   Mon Jan 21 13:17:54 2013 +0400

    Fix LLVM.with_message_output.

    One should first check for the return value, which is consistently
    LLVMBool with True indicating an error, and only then try to fetch
    the message.
Fix xref comment for loop-idiom pass.
Update yard xref
Generate FFI for PassManagerBuilder.

Note that as of LLVM 3.2, there is a bug in LLVM source which will
prevent ffi_gen from working. Manually add stdbool.h to the list of
imported headers and then clean the unrelated definitions it produces.
Add PassManagerBuilder interface.
Merge remote-tracking branch 'whitequark/pmbuilder'
Fix scope error
Add some pass manager builder tests
adds some benchmark for factorial
adds comments (and the dump back on factorial)
adds the toy language
fix oprerator example
add the console style back and fix readme
Adding unofficial homebrew formula for LLVM 3.2
Add homebrew patched llvm to README
Add Austin Seipp to contributors
Fix incompatible type in LLVM::Function#type and add test
Add LLVM::Function#function_type
Fix errors in LLVM::FunctionType#argument_types and LLVM::FunctionType#vararg?