Fix ReadOnlyError when destroying StockItem

StockMovement is a readonly object so we can't delete them. And by that
logic I believe we shouldn't clear stock items from the database either
otherwise we will have stock movements associated with non existing
stock items

Fixes #3727
Fixes #3723
Revert "fix the ActiveRecord::ReadOnlyRecord exception when the @product is null when update the variant"

This reverts commit 1e0dc2e97ffd6577178efbe3a628520c00390dd1.
Remove deprecated methods

* BaseHelper#money
* Order#price_adjustments
* Order#price_adjustment_totals
* ShippingMethod#zone
* ShippingMethod#zone=
* Product#variants_with_only_master
Bump Rails version + spree branch reference in README
Prep for 2.1 release

Conflicts:
	README.md
Bump to 2.2.0.beta
Resolve assets:precompile on heroku

Prevent any code within spree to start a db connection when precompiling
assets
Override awesome_nested_set module

To prevent it from starting a db connection when it shouldn't. e.g.
assets:precompile
Remove remaining `table_exists` checks

And pass string into `scope` block so that it's only evaluated when
spree actually needs it