Fix issue #2287, adding support for peg revisions to 'svn log' and its underlying API.
* subversion/libsvn_client/log.c (svn_client_log3): New function based on the previous incarnation of
svn_client_log2() which accepts a peg revision argument. Highlights of this refactoring removed any meaningful use of BASE_URL (now IGNORED_URL), and added a block which chooses the appropriate (youngest) revision to use when opening a RA session.
(svn_client_log2): Delegate to svn_client_log3(), passing a PEG_REVISION argument with a KIND of svn_opt_revision_unspecified.
* subversion/include/svn_client.h (svn_client_log3): New declaration based on the previous incarnation of svn_client_log2() which accepts a peg revision argument.
(svn_client_log2): Deprecated, and adjusted doc string.
* subversion/svn/log-cmd.c (svn_cl__log): Remove extraneous comment, strip any peg revision off of the end of the URI (storing it for later use), and update API to svn_client_log3().
* subversion/tests/cmdline/log_tests.py (url_missing_in_head): Add peg revision to URI.
(log_through_copyfrom_history): Add peg revision to URI, and command output.
Stylistic refactoring of svn_client_log2(). No functional change.
* subversion/libsvn_client/log.c (svn_client_log2): Leverage the extra stack frame used in the middle of this function for just-in-time declarations of local variables ERR, START_REVNUM, and END_REVNUM. Remove unnecessary initialization of START_REVNUM and END_REVNUM.