use mrb_str_new_lit instead of mrb_str_new for C string literals
introduce mrb_str_cat_lit() to create strings from C string litrals
use mrb_str_cat_lit() more widely
use mrb_intern_lit instead of mrb_intern_cstr for C string literals
fix bug for get_valid_iv_sym

When sub-string is used in the following way, it does not work well.

o = Object.new
o.instance_variable_set(:@a, 1)
o.instance_variable_defined?("@abc"[0,2]) #=> false (this should be true)
add test for __LINE__ and __FILE__
Merge pull request #1743 from cubicdaiya/issues/use_mrb_str_new_lit

Use mrb_str_new_lit instead of mrb_str_new for C string literals
Merge pull request #1744 from cubicdaiya/feature/introduce_mrb_str_cat_lit

Introduce mrb_str_cat_lit
Merge pull request #1749 from take-cheeze/file_line_test

add test for __LINE__ and __FILE__
Merge pull request #1747 from cubicdaiya/issues/use_mrb_intern_lit

use mrb_intern_lit instead of mrb_intern_cstr for C string literals
Merge pull request #1748 from cubicdaiya/issues/optim_get_valid_iv_sym

fix bug for get_valid_iv_sym