change message to selected_quantity_not_available when selected quantity can not be supplied
Fetch X-Spree-Token in request.headers

As that is where it's available rather than in request.headers.env which
would bring the full header env name e.g. HTTP_X_SPREE_TOKEN

Fixes #3798
Reversing order in which adjustments and line_items are destroyed when cart is emptied

See, e.g., https://github.com/spree/spree/issues/3787#issuecomment-25417823

Occasionally deleting the line_items before the adjustment will cause strange things to happen, like trying to recalculate the shipping and getting `nil` shipping amounts for shipments of no line items. Deleting the adjustments first and the line_items second seems a little cleaner in this way.

Also, philosophically it seems to make sense to empty a cart in the reverse order of how it was populated. So the cart begins with line items, to which handling and tax and shipping are added... Seems reasonable to "roll back" to a fresh cart by reversing the order and taking away the adjustments then the line_items.

If for some reason, the state gets stuck mid-emptying-of-cart, then you might be left with a user who's got their items but no shipping or tax charges. I'm not clear on whether `empty!` also rolls back the order state machine (which would prevent that bug), but I'm also not sure how concerned we should be about this possibility -- as opposed to the known issues that can sometimes happen when you delete the line_items first, rather than second.

I can see an argument both ways, but my opinion would be that this proposed order makes the most sense overall.

Fixes #3800
fix bug in Product#save_master (see #3746)

Fixes #3746
Fixes #3801
Allow any version of the money gem above 5.1.1

Related to #2737
remove unused credit card fields

Removes verification_value, issue_number, and start date from the
payment admin, as they aren't used anywhere within spree and were
always blank.

Adds card_type, as that may be helpful.

Fixes #3802
Remove bashisms, fix shebangs

* Remove `function`: Allows ubuntu users to `sh build.sh`
* Ensure shebangs exist on first line of scripts

Fixes #3803
Check for column_name in migration instead

Avoid a db connection when loading all Spree code right away

Fixes #3806