Support per-user limits on coupons.

This restricts users from placing multiple orders with the same discount.
This is a commonly used feature in Magento for sites that have a max $ limit
on their coupons. Users bypass this by placing multiple orders. Magento
however doesn't force you to be logged in during the time of ordering,
so it's easily bypassed that system.
Refactor Adjustments & Order to reduce logic
Merge pull request #1912 from stloyd/feature/refactor_adjustments

[RFC] Refactor Adjustments & Order to reduce logic
Merge pull request #1745 from stloyd/feature/per_user_limit_coupons

[Core] Per-User usage limits on coupon
[Inventory] Availability checker must check that variant was not deleted
Merge pull request #1930 from stloyd/bugfix/inventory_check

[Inventory] Availability checker must check that variant was not deleted
Add basic order edit functionality to backend with extended change logging
Extend product editing history
Fix price display in history logs
Fix problems with history log using wrong IDs
Move design polishing, adding ability to change order state & currency
Make shipped orders immutable
Prepare for order coupon editing, fix order history for immutable orders
Allow adding order items in backend
Update select2 library, add option to find product by name
Initial Contact component.
[Core] Fix promotion bug that was introduced by wrong merge + fix specs
Initial Contact bundle.
Merge pull request #1933 from stloyd/bugfix/promotion_bug

[Core] Fix promotion bug that was introduced by wrong merge + fix specs
Merge pull request #1864 from stloyd/feature/order_edit

Add basic order edit functionality to backend