don't always generate gem functions

If the src and mrblib directories of a mrbgem don't exist or don't
include "usable" files (for tools like mirb), then functions for gem
initialization and finalization don't have to be generated.
Fix typo in gc.c
removed non-need space
Merge pull request #2516 from suzukaze/fix-typo-gc

Fix typo in gc.c
Merge pull request #2517 from kkkkkt/remove_nonneed_space

removed non-need space
move StopIteration to core; close #2518
fixed evaluation context of eval(string) and instance_eval(string)
Merge pull request #2519 from SatoshiOdawara/fix_context_of_eval

fixed evaluation context of eval(string) and instance_eval(string)
Add String#succ, String#succ!, String#next, String#next!
Merge branch 'string-succ' of https://github.com/mattn/mruby into mattn-string-succ
remove test for succ on Unicode (non-ASCII) char; #2520
git push origin masterMerge branch 'mattn-string-succ'
Fix a bug that class variable can't be referenced from class method

Class method defined in singleton class should be evaluated in class
context not singleton class context.

fix #2515
Merge pull request #2521 from kou/fix-class-variable-and-singleton-class-method

Fix a bug that class variable can't be referenced from class method
timer on windows bug fixed.
Merge pull request #2522 from dycoon/debug_timer

timer on windows bug fixed.
Merge pull request #2503 from cremno/dont-always-generate-gem-functions

don't always generate gem functions
changed mrb_str_size and mrb_str_bytesize comments.
Fix String#succ. "-".succ should be "."
Fix String#succ. "-a-".succ should be "-b-"