Add store credit to list of payment_methods.

This will currently cause issues if you attempt to save the store credit
payment method in the Spree admin interface because the gateway is not
in the list of available payment methods.

It will default the store credit payment method to the first payment
method in the list, save with that, and now allow you to change it back,
thereby breaking everything!
Compare state directly in specs.

Previously this test used the invalid? method definition from state
machine which conflicted with a method from ActiveModel. Instead of
dealing with that issue, we will compare the state directly to what it
should be rather than relying upon the magic methods defined by
state_machine.

Fixes #5
Merge pull request #4 from gmacdougall/2-2-step-any

[master] Set store credit amount input step to any.
Merge pull request #7 from gmacdougall/state-machine-method-conflict-fix

Compare state directly in specs.
Lock store credit before modifying.

This prevents a potential race condition where store credit can be
consumed by multiple checkouts happening simultaneously.

As with most race conditions, it's difficult to replicate in a test
environment, but this will now lock the store credit prior to
modification, so that modifications happen within a transaction with the
correct up to date values.
Add store credits seeds.

Without the seeds, things don't work correctly. If you run the
migrations this data will be added, but if a new developer/environment
is created from seeds then things don't work quite right.
master based on spree/master

This updates the Gemfil/gemspec to use the current git master for Spree.
Store originator on store credit events

This allows admins, gift cards, reimbursements, refunds, etc to be recorded as the "originator" of a store credit event.

- Add originator_id and originator_type fields on spree_store_credit_events table
- Allow sending an "originator" property via payment method authorize/capture/purchase/void/credit calls
- Add an action_originator attr_accessor on StoreCredit that propagates to the StoreCreditEvent on save
- Send an originator to StoreCredit when redeeming a gift card
- Send an originator to StoreCredit when granting a store credit via the Admin UI

Also:

- Rename StoreCredit#authorization_code -> #action_authorization_code to match the other "action" properties
- Refactor some method calls a bit
- Refactor some specs a bit
Add some specs

Specs I forgot to put in db4a81e7bcd34fee80b2ec6a9df638b780cc0462
Also, update a non-bang save to a bang version. It was failing silently in the specs due to some missing data and was causing these new specs to fail.
Stop using ActiveSupport::Concern

ActiveSupport::Concern does not deal with some changes to Rails 4.1
autoloading, leading to issues with multiple included blocks being
defined when modifying files in the Rails development environment.

Not defining included as a block seems to allieviate this issue, so this
commit strips the use of ActiveSupport::Concern, and just deals with
.include and .prepend directly.

Closes #12.
Revert "Stop using ActiveSupport::Concern"

This reverts commit 841ab3e5066e31fee63c808d51be7f69853d8362.
Stop using ActiveSupport::Concern

ActiveSupport::Concern does not deal with some changes to Rails 4.1
autoloading, leading to issues with multiple included blocks being
defined when modifying files in the Rails development environment.

Not defining included as a block seems to allieviate this issue, so this
commit strips the use of ActiveSupport::Concern, and just deals with
.include and .prepend directly.

Closes #12.
Don't change a gift card's redemption code if it is initialized with one
Need to use the git repo not the old gem.
Store credit reimbursement type
Add migration for Store Credit Reimbursement Type. Update readme for returns and exchanges integration info
Set the currency on store credit when creating reimbursement credits
Validate presence of currency on store credit
Cancellation of credits
Before destroying store credit, check amount used