premature optimization, assuming that would be how someone interacted with this might as well move it as we'll instead use the qualified function name for input
refactored functions in query some more to allow re-use in range_range, select() pretty much just calls out to a bunch of handlers now