Restore "Add pry and pry debuggers to common spree dependencies"

This reverts commit 7006953963f65e69c14c6f88f2a2e87e83d8b20d.

Was breaking CI but that should be fixable by updating bundler on the CI.
Set missing credit card attributes when possible. Fixes #4972
API Orders#show should only return the order json. Fixes #4979
Use prepend_before_filter to try calling before apply_coupon_code. refs #4926
Switch to cancancan to fix issues with custom abilities being unable to properly initialize sprees namespaced models.
Merge pull request #4978 from jordan-brough/restore-pry-debuggers

Restore "Add pry and pry debuggers to common spree dependencies"
Lookup order based on user_id to prevent started orders from showing after logout. Fixes #4940
Fix specs for i18n changes. Fixes #4998
Added missing translation for back_to_shipping_categories_list

Fixes #4993
Do not blindly accept just any month for CreditCard expiry

Fixes #4971
Silence two warnings

Fixes #4985

Silences this:

    [WARNING] You are not setting Devise.secret_key within your application!
    You must set this in config/initializers/devise.rb. Here's an example:

And this:

    [deprecated] I18n.enforce_available_locales will default to true in the future. If you really want to skip validation of your locale you can set I18n.enforce_available_locales = false to avoid this message.

in the sandbox app.
Added localization for multiple SKU info

Fixes #4994
Validate price maximum.

Price is constrained to be precision: 8, scale: 2 at the database level,
but that validation isn't reflected in the model.

This will lead to errors when prices are 1,000,000 or above, which is a
lot in USD, but 1 million Vietnamese Dongs is less than $50 USD.

Fixes #4944
Initial state machine for return_items