In the updated delta editor path driver, ensure paths are relpaths.
This also fixes a bug with '/'-prefixed paths in svn_delta_path_driver2(). A path given as the string "/" was handled as a regular path (first open the editor root, then call the callback passing it the root parent-dir-baton) rather than as a root path.
* subversion/include/svn_delta.h (svn_delta_path_driver_cb_func2_t, svn_delta_path_driver3, svn_delta_path_driver_step): Declare that paths are relpaths. (svn_delta_path_driver2): Document that a slash prefix is allowed.
* subversion/libsvn_delta/deprecated.c (path_driver_2_to_3_baton_t, path_driver_2_to_3_func, svn_delta_path_driver2): Implement backward compatibility for a slash prefix.
* subversion/libsvn_delta/path_driver.c (svn_delta_path_driver3): Rename variables to 'relpath', for clarity. (svn_delta_path_driver_step): Assert the path is a relpath, remove support for a slash prefix, and rename variables.
Make the editor path driver callback a little easier to use.
Add 'editor' and 'edit_baton' parameters to the path driver callback. All but trivial callback implementations need these, and they otherwise had to be passed through the callback baton, which was straightforward but more trouble than it need be.
* subversion/libsvn_delta/path_driver.c (svn_delta_path_driver3): Rename from 'svn_delta_path_driver2'. (svn_delta_path_driver_state_t, svn_delta_path_driver_start): Change the callback function type. (svn_delta_path_driver_step): Pass the extra parameters.
* subversion/libsvn_client/shelf.c (path_driver_cb_func): Take 'editor' and 'edit_baton' as direct parameters. (path_driver_cb_baton_t, svn_client__shelf_replay): Remove them from the path driver baton.