Decorate SourceLocation objects with a "lines" property.

Closes #25.
Disentangle getReprinter from the Parser.
Stop passing Parsers to the Printer constructor.
Move getReprinter and its helper functions into lib/patcher.js.
Use parse and print functions to implement runString.
Replace the Parser class with a simple parse function.

Since this function returns the copied AST, there is no longer any need to call the .getAst() method.