don't use str{cpy,cat} in mruby and mrbc

The length of each string is known. It should be used.
parse.y: don't use strcat
class.c and numeric.c: fixed MSVC warnings
Merge pull request #1446 from cremno/casts

MSVC: fix warnings
Merge pull request #1445 from cremno/no_strcpy_and_strcat

don't use str{cpy,cat} in mruby and mrbc
allow turning off GC generational mode by default by MRB_GC_TURN_OFF_GENERATIONAL; #1447
finish half-baked GC cycle before starting full GC; #1447