Restructure and clean up
Interpolate rationals, count counters, and switch between both on the fly