In print-text-format there should be a seperation
of concerns between the message printing function
and the underlying field printing functions.
To that end:
In the recursion, we currently have the top level implementation
function of print-text-format determine whether to print
field_name {
This is more complicated then it should be, this is a field
so the field printer should be the one worrying about it.
Also, we should only worry about increasing indentation on a
recurse, not in the field printers.
Seperate printing concerns in text-format
In print-text-format there should be a seperation of concerns between the message printing function and the underlying field printing functions. To that end: