Improve error handling

  * Prefer SVNErrorCode constants over hardcoded numbers
  * Throw SVNException instead of BaseCmd.sendError + return
  * Use more specific error codes where appropriate
Merge branch 'error_codes'

* error_codes:
  Improve error handling