support freebsd versions without log2 function
Disable implicit integer conversion in mrb_get_args
Fixnum#succ may overflow
implement Integer#succ in Ruby
implement some Numeric methods in Ruby
move some methods to make floats and integers compatible [mruby special]
modify upto/downto for compatibility
fix #1542
Merge pull request #1543 from Fleurer/issue1542

fix #1542
fix #1544

We have already reserved that register in codegen()'s case NODE_DEF, but
what we care about is actually the previous register. So what we need is
get that register by cursp() after pop(), then recover the reservation
by push().
add a regression for #1544
update test code to ensure return value from class statement
Merge pull request #1530 from h2so5/args-explicit-conversion

Disable implicit integer conversion in mrb_get_args
mrb_Integer() should not convert strings to integers
nil/false should not be implicitly converted to integers in mrb_get_args(); close #1529
Uniquify the results of Object#methods
fix #1550

emit a "\n" as the first token for parser instead of taking the
first character from the next file for lexer, to prevent mruby
"concatenate" two keywords between files

it should be regarded as a work around, for it can not resolve
this case:

$ cat a.rb
"
$ cat b.rb
b"

$ bin/mrbc -o- -v a.rb b.rb
mruby - Embeddable Ruby  Copyright (c) 2010-2013 mruby
developers
NODE_SCOPE:
        NODE_BEGIN:
                NODE_STR "

b " len 4
irep 0 nregs=2 nlocals=1 pools=1 syms=0
000 OP_STRING   R1      "\n\nb "
001 OP_STOP

thanks @bovi 's idea
fix wrong actual and expected order
preserve only arguments on stack; fix #1527
implement Class.new with block