Fix simple_current_order to not conflict with order.
Fixes #4611
call credit with amount and make sure we update the order after cancel.

Fixes #4504
Closes #5005
make unique SKU for sample data
Avoid browser default font on backend icons

In the Spree backend UI, icons are used by adding classes to existing elements, without adding something like `<i class="icon-something"></i>`.
But font-awesome-rails sets the font-family to just `FontAwesome`, which results in the browser default font-family (usually, Times New Roman) being used for any text that appears next to an icon (on Firefox, at least).
Screenshot: http://adobe.ly/1mb9oOH

Fixes #4885
Validate uniqueness of variants sku. Fixes #5015
Fix analytics check to run only when there is an order. Fixes #4929
Fix duplicate sku in samples.
Order history should be reverse chronological. Fixes #5024
allow specifying Kaminari page_method_name

only define custom page method if page_method_name != page to avoid recursion
Fixes #5035
Use the proper flash

This is not a success
Fixes #5034
Update Google Analytics

Updates GA tracking code to support Display Advertising. See: https://support.google.com/analytics/answer/2444872 for more.
Fixes #5030
Fix order merging. Fixes #5028
Show flash errors for resource controller html requests

and not for js requests.
When a resource controller failed to create/update there was no indication of what had failed.

Also adds "with_model" gem to allow easier isolated testing of `Spree::Admin::ResourceController`.

Fixes #5011
Fixed deprecation config in spec_helper.rb templates (spree_cmd)

Closes #5045
use the variant_full_price on the product show page so the correct currency settings are used. Fixes #4995
Reduce unnecessary DB round-trips.

Spree::Product has after_save :touch in order to fire
the after_touch callback. But as a result, every Save updates
the product twice. There's no need to call `touch`
after a save if all you want to do is fire the after_touch
callback. So I fixed that.

I also fixed `punch_slug`, which gets called after_destroy,
so it does a single round-trip instead of about six.
After a destroy has already happened, it is unnecessary to
validate the product again, call callbacks again, touch the
product again, and fire all cascading touches again.

Closes #5049
fix failing specs with variant price
refactor the variant price for product.js.coffee. Thanks @gmacdougall
Try using pre_load instead of includes to increase performance when there are a large number of vairants