Merge branch 'stable-2.6'

* stable-2.6:
  TrivialRebase: Correctly handle empty patch-id
  TrivialRebase: Support alternative ssh executable
  TrivialRebase: Add server argument
  TrivialRebase: Make private key argument optional
  TrivialRebase: Pipe subprocesses directly
  TrivialRebase: Skip unsupported categories
  TrivialRebase: Raise exception on error
  TrivialRebase: Refactor as a class
  Read initial ack for scp