Add new interface and method for sending command

Sending command job is giving up if command cannot be sent with any
reason. It means that command would be lost if gerrit is down.

This patch adds new interface then implement it to abstract class
to raise exception if command was not sent with errors.
User can implement retry logic using this.