Fix a rare bug. In case sizeof(size_t) is less than sizeof(mrb_int), ARY_MAX_SIZE will be wrong values.
This fix is implicity assumption MRB_INT_MAX <= UINT64_MAX. So I put a static assertion.