payment: add DirectPaymentTransaction#getExternalKey

See https://github.com/killbill/killbill/issues/180.

This also fixes compilation errors with the latest Java client
(PaymentMethodProperties has been renamed PluginProperty).

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
payment: allow override of payment method id

See https://github.com/killbill/killbill/issues/177.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
Retry payment state machine work
Merge remote-tracking branch 'origin/state-machines' into state-machines2
Retry payment state machine work