I have perhaps been overly generous in placing functionality within sub-namespaces. After all, everything is under kat:: already. As long as there is no chance of collisions, a lot of things can live under kat::, and many others under kat::linear_grid, comfortably.