add PrettyPrinters from sprinter
case class like printer
[probably useless] remove contextManaged and add tree pattern match template
Second try to hijack work of PrettyPrinter to get a SnippetExtractor,

but this time by overriding printTree(Tree) instead of print(Any*).
Much better, but found out that tree.children from scalac source
is not suitable, because for instance a case class always extends
scala.Product with scala.Serializable, so the Template tree object
for the case class will have scala.Product and scala.Serializable
as tree.children.
A pretty printer (and snippet extractor), however, might decide
to omit these, but then the number of snippets is not consistant
with the number of elements in tree.children.
Conclusion: A pretty printer (and snippet extractor) must
implement its own notion of "retrieve all children of a tree".