Improve table printer interface

Also allows you to add rows one at a time and effectively batch up
what you want to print. We think we want to change print to just
print the current rows and flush them to screen. That might be
in a follow-up refactoring
Use table interface correctly

We discovered that printing each row at a time was problematic
because the table interface expects you to pass in all of the rows
that you want aligned at once. The previous commit changes this
interface to allow you to add rows, so we're thinking about using
that now.

[Finishes #69746898]
Refactor print to not take any parameters.