Ensure Spree::BaseMailer is loaded before Spree::UserMailer

Fixes issue brought up by @swrobel in https://github.com/spree/spree_auth_devise/commit/9b874ec#commitcomment-3231698
Use correct path_prefix so that URLs are correct
Fix a compatibility issue with form_for as provided by other helper replacement gems.

Fixes #100

Conflicts:
	app/views/spree/user_registrations/new.html.erb
Use flash[:success], not flash.success

Fixes spree/spree#3166

Conflicts:
	app/controllers/spree/admin/users_controller.rb
Only check if user is an admin *before* they are created, not all the time on save

This was otherwise causing issues in our tests
stub spree_current_user, not just current_user, within admin/shipments_controller spec
Correct link click for user in user_spec
Set default_url_options to appease password_reset_spec test
Merge remote-tracking branch 'github/1-3-stable' into 1-3-stable