Split out polled io, debug puts, and console reserve resources to reduce dependencies and shrink minimum executable size.