Make 'svnlook.py' usable as a library by adding getter methods.

See the email thread "[PATCH] svnlook.py: Make it usable as a library", from
anatoly to dev@, initially on 2012-05-28 [1] with no response, followed up
starting on 2013-11-09 [2].
  [1] e.g. <http://svn.haxx.se/dev/archive-2012-05/0547.shtml>
  [2] e.g. <http://svn.haxx.se/dev/archive-2013-11/0039.shtml>

Patch by: anatoly techtonik <techtonik{_AT_}gmail.com>

* tools/examples/svnlook.py
  (SVNLook): Convert to new-style class. Change order of initializer
    arguments and make some of them optional, to allow using the class
    without immediately running a print command, and for convenience.
    Add getter methods and adjust existing cmd_* methods to use them.
  (DirsChangedEditor, ChangedEditor): Accept a callback and call it
    instead of directly printing the results.
  (Editor, DiffEditor): Accept a callback, for compatibility, but do not
    call it. These would need to be updated to make the 'tree' and 'diff'
    functionality available.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1541558 13f79535-47bb-0310-9956-ffa450edef68