Check for existance of payment? method on Order instances before calling it

Fixes #2910
Modify CreditCard#brand to use spree_cc_type, allowing development credit cards to be used

Fixes #2923
Fix issue where calling @order.payment? may result in an ':payment is an invalid name' error from state_machine

This backports has_checkout_step? from Spree 1.3 to Spree 1.2.

Fixes #2910