Additional can?'s in product admin

* Hide new/edit/clone/delete product links if they are unauthorized
* Hide any tabs from the product sidebar which are unauthorized

Allows fine grained control over which actions on a product are
permitted.
This already worked properly through use of authorize! in controllers.
However this left dead links to unauthorized pages.

Additional can?'s in Order admin

* Hide new order button if unauthorized
* Hide events, resend button if unauthorized

custom_authorization! test helper

Creates a new custom_authorization! test helper to aid in defining
custom cancan rules within test cases. Replaces existing uses of
stub_bar_authorization! with custom_authorization! and explicit rules.

Feature specs of hidden unauthorized links

Fixes #3469
Add require spree_sample to spec helper to prevent failure when running build.sh.
Store tax category on line item

Fixes #3482
Fixes #3481
Remove padding from date-range-filter arrow

Relates to #3465
Fix issue where admin nav would display in a Times-like font

Related to #3465
Remove deprecated -moz-border-radius clause (deprecated in Firefox 13)
Fix styling of select2's droparrow
Add changelog entry for #3481
Add another migration to link existing line items with their tax categories

Related to #3481
Move require of select2 into spree_backend to make select2 available to extensions.
Fixing some text rendering issues that appear after updating FontAweesome

Fix select2 styles. Fix some button text rendering problems on OSX.

Fix table reorder handle align.

Fix .select2-choices background