Fix to not print unnecessary comma.

When `n2->car` is 0 and `n2->cdd` is not 0,
unnecessary comma was printed before first local variables.
Reduce new string creation in `capitalize`, `downcase`, `upcase` method of `Symbol` class extension.
Add test to check unmodified result is working.
Reduce string creation of `length`, `size`, `empty?` method of `Symbol` extension.
Reduce string creation in `Symbol#casecmp` by using `case!`.
Merge branch 'take-cheeze-reduce_new_obj'
add mrb_open_without_mrbgems API
make default allocf public to use it with mrb_open_without_mrbgems
rename mrb_open_without_mrbgems to mrb_open_core
refacor mrb_open_core() to reduce a local variable
Merge branch 'take-cheeze-mrb_open_without_mrbgems'
Start documenting C APIs.
Add documentation of memory pool configurations.
Add documentation of state atexit configuration.
Merge pull request #2415 from take-cheeze/mrbconf_doc

Add mrbconf document.
Merge branch 'master' of github.com:mruby/mruby
Merge pull request #2416 from take-cheeze/c_api_ref

Start documenting C APIs.
Add `Symbol#intern`.
Merge pull request #2418 from take-cheeze/sym_intern

Add `Symbol#intern`.
revert #2344 because of #2395
Merge pull request #2333 from yui-knk/fix/dump

Fix to not print unnecessary comma.