Make 'svn lock' and 'svn unlock' obtain a working copy lock around its
operation. This resolves an old TODO in libsvn_wc and a user reported
issue involving readonly working copies.

* subversion/libsvn_client/locking_commands.c
  (lock_baton): Add base_url.
  (store_locks_callback): Update caller. Calculate a proper url for
    notifications, instead of passing a relpath as url.
  (wc_lock_item_t): Store url.
  (organize_lock_targets): Obtain working copy locks if necessary. Calculate
    targets per working copy.

  (svn_client_lock,
   svn_client_unlock): Update caller. Release working copy locks.

* subversion/libsvn_wc/adm_ops.c
  (svn_wc_add_lock2,
   svn_wc_remove_lock2): Remove commented out validations.

* subversion/tests/cmdline/lock_tests.py
  (lock_multi_wc,
   commit_stolen_lock): Update assumptions for tweaked output.

* subversion/tests/cmdline/svnadmin_tests.py
  (test_lslocks_and_rmlocks): Update assumptions for tweaked output.


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