Make it possible to selectively use the cleanup features break locks, fix
timestamps, clear dav cache and vacuum pristines, to allow api users to
use them in a safe way.

Without this patch there is no safe way to use these features as that would
require an external locking agent to verify if no other subversion client
is using the same working copy.

* subversion/include/svn_wc.h
  (svn_wc_cleanup4): New function.

* subversion/libsvn_client/cleanup.c
  (do_cleanup): Remove hack that works for SVN_CONFIG_OPTION_SQLITE_EXCLUSIVE,
    but not for SVN_CONFIG_OPTION_SQLITE_EXCLUSIVE_CLIENTS. This case is now
    properly handled by svn_wc_cleanup4().

* subversion/libsvn_wc/cleanup.c
  (cleanup_internal): Make several features optional.
  (svn_wc_cleanup3): Rename to...
  (svn_wc_cleanup4): ... this. Make features optional.

* subversion/libsvn_wc/deprecated.c
  (svn_wc_cleanup3): new function.


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