Fix running just rake for specs.
Fix rerunning sample specs without new dummy app.
Refactor Promotion.applied scope to query faster

* Before the scope did two joins. Joining the join table and than the
  orders table. As joining the join table is sufficient to define the
  result set removing one layer of joins significantly speeds up the
  operation on large order tables.

Fixes #5453
Assign store id to each order.
Associate new exchange orders with the same store as the original order

Replaces #110.

Fixes #5440
Remove check thats no longer necessary.
Bump version.
Revert "Add Spree instrumentation"

This reverts commit 48669ed26f9ae7e1f07a31f19fbce794ce44ef9c.
Bump version.
Bump to rc3
Check payment method should respond to cancel. Fixes #5307
Improve the presentation during creating prototypes. Fixes #2526
Use slower but robust ActiveRecord for migration

When I ran this migration on my 2-1-stable store, I got the following exception:

    StandardError: An error has occurred, all later migrations canceled:

    Mysql2::Error: Column 'shipment_total' cannot be null: UPDATE spree_orders
                 SET shipment_total = (SELECT SUM(spree_shipments.cost) AS sum_id
                                       FROM spree_shipments
                                       WHERE spree_shipments.order_id = spree_orders.id)
                 WHERE spree_orders.completed_at IS NOT NULL AND spree_orders.shipment_total = 0/Users/username/appname/db/migrate/20140609012476_set_shipment_total_for_users_upgrading.spree.rb:7:in `up'
    ActiveRecord::StatementInvalid: Mysql2::Error: Column 'shipment_total' cannot be null: UPDATE spree_orders
                 SET shipment_total = (SELECT SUM(spree_shipments.cost) AS sum_id
                                       FROM spree_shipments
                                       WHERE spree_shipments.order_id = spree_orders.id)
                 WHERE spree_orders.completed_at IS NOT NULL AND spree_orders.shipment_total = 0

Rephrasing the raw SQL into ActiveRecord, the migration ran slower but didn’t crash.

(I was intending to add `if shipments && shipments.sum(:cost)` to line 7 but surprisingly didn’t need to.)

Fixes #4823
Raise an exchange error if we can't ship all requested items

This will prevent an exchange from failing silently when, for example, a stale return authorization admin page gets submitted requesting an expedited exchange for an item for which there is no longer any stock available.

Fixes #5472
fix spelling of retrieve everywhere
fixes #5473
update readme for rails 4 asset precompilation
fixes #5474
add carmen as a dependency
create all the countries via carmen
use carmen to create all the states
implement active record base transaction to make it faster