Fix issue where, if using routing-filter, taxon autocomplete would break

Fixes #2248

This is due to the URL provided by spree.admin_search_taxons_url returning something like http://localhost:3000/admin/taxons?locale=en and then the code was appending '?ids=1' to the end of this, which is obviously an incorrect URL.

This new solution is more bulletproof.

Conflicts:
	backend/app/assets/javascripts/admin/spree_backend.js
	backend/app/assets/javascripts/admin/taxon_autocomplete.js.erb
	core/app/views/spree/admin/shared/_routes.html.erb
Add update only shared example.

Fixes #2861
Fixes #2788 allowing use of config.threadsafe!

Fixes #2852
Should not use dom id new_product twice.

Fixes #2852
Use fully-qualified constant when referencing Package within Spree::Stock::Splitter::Base

Fixes #2832
Fixed prototype add fields selector

Fixes #2761
Don't configure ActionMailer settings if they're already configured

Fixes #2855
fixes jstree ordering problem with jquery 1.9

Fixes #2728
Bump Money to 5.1.1

Contains a fix for this bug: https://github.com/RubyMoney/money/issues/271
ActionMailer::Base.smtp_settings in MailSettings spec
Use lazily_find_element in order_details_spec rather than sleep
Various changes:

* Update selenium-webdriver to run with latest Firefox.
* Update CONTRIBUTING guide on build script
* Move rspec color into spec_helper

[Closes #2862]