Done. The functional interface (group, glue, concat, text, etc.) should be enough for writing custom pretty printers.