Split nitpretty

Split the nitpretty module into lib and tool

Fixes #836
Bof, moi je veux savoir comment transformer un AST en un streamable ou autre qui contient son pretty-printage.
L'outil en soi m’intéresse moyen (c'est intéressant à avoir, mais à la fin de la donc sans doute)

Genre, un docunit comme ca serait cool

~~~
import parser_util
var tc = new ToolContext
var nmodule = tc.parse_something("class A\nfun   toto :  Int  do   return   5\nend")
var ppv = new PrettyPrinterVisitor
var pmodule = ppv.pretty(nmodule)
assert pmodule.write_to_string == """
class A
\tfun toto: Int do return 5
end
"""
~~~