[WIP] [ci skip] Fixed garray_T member types

This PR contains a patch for fixing up the member types inside `garray_T`. The point is, that an array can't be of negative size. So we should use the `unsigned` types in here, as well as we should use the `size_t` type for the size of an array element.

This first patch(set) does not compile yet, as the compiler warns about comparison of signed and unsigned integer variables. I am willing to clean these errors up, **if this patch is desired**!

Please tell me what you think about it.