Allow users to easily override zipcode validation

Just like it's already done with the phone field

[Fixes #3065]
[Fixes #3073]
remove unused variable redefinition [Fixes #3072]
Use Spree.url() to build taxonomies jstree urls

URLs were hardcoded which caused errors when users mounted Spree in a
path other then "/"

[Fixes #3070] [Fixes #3071]
master branch is now 2.1.0.beta
Remove legacy comment from order model [Fixes #3063]
Changed required RubyGems version to 1.8.23 so that Heroku can host it
[Fixes #3077]
Create a CHANGELOG file for each Spree component

It should help us to have a detailed idea of what changes between
versions. Both community and core developers could add an entry for
every relevant change. e.g. deprecated methods, relevant API
improvements, fixes.

Fixes #3062
Adding i18n values to English Locale
Refactor frontend address spec

This spec has failing on the CI for a while. The reason might be that it
used capybara `find` to check the visibility of elements and that method
does not wait until the element become either visible or not visible so
depending on the page load time the spec may get confusing results.

`has_selector?` is probably a better choice since we can specify
explicitly the `visible` option

[Fixes #3084]
Symbolize attachment styles keys on controller

[Fixes #3069] [Fixes #3080]
Add issue numbers to paperclip 'undefined method processors' error changelog entry
Remove t() helper override

All spree core codebase now uses Spree.t() so I think we can safely
remove it. Plus I don't believe it's a good idea to throw warning every
time t() is called. Spree extensions or even other libraries can just
choose not to use Spree.t() at all. I don't think we should force then
to.

Fixes #3083
Remove order.update_totals from order.payment_required?

Instead we can call `order.update_totals` on the checkout_flow block
only since that's the only place on the code base where it seems to be
necessary. Plus calling `order.update_totals` generates a whole bunch of
work users may really not need or expect when calling
`order.payment_required?`

Fixes #3086
Fixes #3040
Use change method to trigger use_billing_address

That should prevent the shipping address form being hidden when the
browser autocompletes the form.

[Fixes #3068]

Fixes #3085
Do not build packages for missing items

When building shipment packages Spree assumed that every order item had
an existing stock item in all stock locations. But that may not always
be the case since the `propagate_all_variants` config was added to
StockLocation in #3050

I think we should move forward with this. Spree should be smart enough
to figure out which order items exist in which stock locations.
Honestly I don't like the implementation of this fix but it was the only
one I could come up with for now.

This issue was brought in #3051. So we need to figure out it first to
only then merge that PR.

[Fixes #3067]
Add icon to remove stock items from product section
Use new stock location api in product stock management

[Fixes #3051]
Remove leftovers allow_backorders references

Backorders can be configured now as per stock location or stock item

[Fixes #3049]
Remove Address#phone_validate which is not being used.
Fix phone number for my ocd.