Make an indented_ostream and some helper classes to manage indenting; this has the nice property of indenting *everything*, even strings with newlines in them