[sgen] Fix string size calculation in the string alloc wrapper.

It turns out copying the size calculation code from boehm's string wrapper
was a bad idea as it does it incorrectly. The whole runtime calculates it as
"sizeof (MonoString) + (len + 1) * 2" and not  offsetof (MonoString, chars) + (len + 1) * 2".

This difference is 4 bytes on 64bits OSX and causes the world to crash.

It might be that we're over allocating here, but we must follow what everything else
expects us to do.