+ pprint library
rewrote code generation from strings to a more typed ast representation