[sgen] Cleanup some allocation code
[sgen] Utility function to compute number of unfaulted pages.
[sgen] Add internal allocator default sizes usage statistic
[sgen] Add assertion on power of 2 for internal allocator section size
[sgen] Adjust internal allocator block size to slot size.

The internal allocator used size segregated blocks which were always
16k large.  Since we have quite a few different size classes this led
to a lot of allocation even for very small programs.

We now use block sizes that are determined by the slot size and are as
small as possible.  They're power-of-two multiples of the page size,
so we end up with blocks of 4k, 8k and 16k.