Use stack allocated gc data for young generation

This makes sure we reset the numbers when gc'ing for the stats and makes
sure we can't leak gc data when doing both young and mature collections.
Work around clang 3.3 compilation issue

Apparently clang compiles something wrong, this change doesn't actually
have any real effect, but it works around this issue.
Add spec for killing a thread that is running a Fiber
Fix raising exception into root fiber when killing thread

Fixes #2392