Move order population responsibility out of OrdersController

The OrderPopulator class now contains the logic for checking the stock of a variant and then adding it to the order if it's valid

This is intended as a fix for #2341
Must set master to be deleted as well in scopes_spec
fix #2347 fluid images for product

Fixes #2374
Bump to Rails 3.2.10
Adjustments can now be open/closed/finalized
- Add a state machine to adjustments with states open, closed, finalized
- Once an adjustment is finalized, it cannot be changed, but an
  adjustment can toggle between open/closed as needed
- Update Admin UI to allow users to toggle an adjustment's state
Show the correct item total on order details page

[Fixes #2376]
Fixing tiny typo

Fixes #2377
[dash] Sync 'spree' as platform type to Jirafe
Update README.md

Bump rails to 3.2.10
use respond_{to/with} in promo checkout controller

Fixes #2381
Improves query to fetch products from line_items

This creates 1/2 less queries when fetching producs from an order's line
items
Makes promotion#products always return an array

In case where rules that doesn't respond to #products are associated
with the promotion this method could break with:

  undefined method `flatten' for nil:NilClass

Fixes #2378
use on_hand method to get on_hand for variant while populating order so that :track_inventory_levels is taken into consideration. [Fixes #2379]

Fixes #2382
Display raw HTML tags from product description on order details page

Fixes #2323
Ensure that variant image value exists before attempting to call mini_url on it

Fixes #2392
Update licenses for new year.

Fixes #2391

[ci skip]
Removes useless call to order#update!

The only reason I could see for those to be there is to make a test
pass. But the problem was on the test itself due to the way stubs work.
Also add some doc blocks to CreateAdjustment class.
Remove CSV references from core.rake

These tasks do not support CSV files
Clean up Adjustment class

  - Removes info about attribute locked

    It was removed in 43a3cca49180b1572e41bc3638d3ca0f0e9116d9 in favor
    of an event machine.

  - Removes invalid block doc adjustment#update!

    adjustment#amount is actually saved when adjustment#update! is called as
    can be confirmed by update_adjustment in the CalculatedAdjustments
    module

  - Turn ruby class methods into Rails scope

    any reason to not keep these method as Rails scopes?

Fixes #2393
Allows old orders to get promo adjustments

UNACTIVATABLE_ORDER_STATES already covers scenarios where a promo should
not be applied to an order

Fixes #2388

Fixes #2395