[sgen] Fix allowance calculation.

The formula for calculating allowance was not only overly complicated
but completely broken, which resulted in the allowance always being the
minimum (4 times the nursery size).  That resulted in too frequent garbage
collections when the heap grew larger.

Now we do something very similar to what Boehm does: Allow the heap
to grow by a third before the next major collection happens.