Generalize the splat handler, to work for phase 2 (and not just KA topic tree)

Makes sense here too, so bringing to our code-base.  next step is to generalize the interface for `*_handler` functions as well--no need for logic to be in the `splat_handler`