Interface for objects that implement pretty printer functionality, such
as indentation.
Pretty printers are used to add white space in output JSON content,
to make results more human readable. Usually this means things like adding
linefeeds and indentation.

Note: since Jackson 2.1, stateful implementations MUST implement
com.fasterxml.jackson.core.util.Instantiatable interface,
to allow for constructing per-generation instances and avoid
state corruption (see [JACKSON-851] for details).
Stateless implementations need not do this; but those are less common.

Method called after a root-level value has been completely
output, and before another value is to be output.

Default
handling (without pretty-printing) will output a space, to
allow values to be parsed correctly. Pretty-printer is
to output some other suitable and nice-looking separator
(tab(s), space(s), linefeed(s) or any combination thereof).