This seems like we're writing a lot for something simple. We can add this later when we see the pattern, but for now we should probably just implement garbage stayman directly.