Ensure that pretty printing ends each non-trivial body text with a single newline.

Leo build: 20141010165502
Replaced leo/external/PythonTidy.py with similar code based on the supposedly latest version, 1.23 of PythonTidy.
Happily, no bugs had to be fixed again.
Still to do: support new settings.

Leo build: 20141010212718
Clarified the source of the code.

Leo build: 20141010212910
Added three new tidy-related settings.

Leo build: 20141010214224
Added @bool use_python_tidy = False to leoSettings.leo.
The default shown uses Leo's newly-improved legacy beautifier: PythonTidy can corrupt data.

Leo build: 20141011092339
Removed the odious "'Can not execute commands from headlines" message.
Instead of this message, Leo ends editing, replaces the event.widget and event.w fields with c.frame.body.wrapper.widget and carries on.
All tests pass.

Leo build: 20141011104641
Updated to-do and project notes.

Leo build: 20141011154346
Fix bug #69: https://github.com/leo-editor/leo-editor/issues/69

Leo build: 20141012064444
Attempt a fix for #35: https://github.com/leo-editor/leo-editor/issues/35
fc.getLeoFile calls new fc.setMaxNodeIndex method after all nodes have been read from the .leo file and all external files

Leo build: 20141013085343
Added leo/core/leoAst module.

Leo build: 20141013090331
Get EKR's fix to the duplicate GNX problem.
Merge remote-tracking branch 'upstream/master'