Dont destroy all order payments in api/checkouts

Can't see why we would do that, no spec coverage or git history to
explain that behaviour either

Conflicts:
	api/app/controllers/spree/api/checkouts_controller.rb

Fixes #4424
Improving performance of migration add_line_item_id_to_spree_inventory_units

I noticed when I ran these commands on the console that the line

    shipments = Spree::Shipment.includes(:inventory_units, :order)

would load a tremendous amount of stuff from the database, negating the performance savings by the `find_each` method. This may even be a Rails bug. Putting the `includes` and the `find_each` into the same line fixed performance issues immediately.
Update hash syntax.
Drop Spree::Core::TokenResource

None of spree components use that feature except for the token attribute
itself which we could just move to Order so we can run less things when
creating an object

Copy tokens to spree_orders.token via migration
Removing order token behavior for a reusable guest_token.

Fixes #4736