No need for #tap
Remove useless empty string
Make both conversion methods work similarly

The conversion without area code already changed the passed number in
place, so change the other method to do the same.
Change delimiter check order: first check if it is present

This reads a lot better, and we won't need to try start_with? for blank
delimiters.

Also rename method name to read better.
Remove earlier return in favor of conditional
optimize string literals in erb templates
Install Spring preloader when generating new applications
Action Pack Variants

By default, variants in the templates will be picked up if a variant is set
and there's a match. The format will be:

  app/views/projects/show.html.erb
  app/views/projects/show.html+tablet.erb
  app/views/projects/show.html+phone.erb

If request.variant = :tablet is set, we'll automatically be rendering the
html+tablet template.

In the controller, we can also tailer to the variants with this syntax:

  class ProjectsController < ActionController::Base
    def show
      respond_to do |format|
        format.html do |html|
          @stars = @project.stars

          html.tablet { @notifications = @project.notifications }
          html.phone  { @chat_heads    = @project.chat_heads }
        end

        format.js
        format.atom
      end
    end
  end

The variant itself is nil by default, but can be set in before filters, like
so:

  class ApplicationController < ActionController::Base
    before_action do
      if request.user_agent =~ /iPad/
        request.variant = :tablet
      end
    end
  end

This is modeled loosely on custom mime types, but it's specifically not
intended to be used together. If you're going to make a custom mime type,
you don't need a variant. Variants are for variations on a single mime
types.
Add variants to release notes
Merge pull request #12977 from strzalek/action-pack-variants

Action Pack Variants
Add nodoc to added VariantFilter class
Backfilled CHANGELOG for AS::JSON::Variable removal (6f3e01e8) [ci skip]
Added JSON release notes [ci skip]
Improve a couple exception messages related to variants and mime types

Avoid one-liner conditionals when they are too big. Avoid concatenating
strings to build error messages. Improve messages a bit.
Merge pull request #13109 from chancancode/json_guides

Added JSON related items to the 4.1 release notes
minor 4_1_release_notes changes. [ci skip]
Merge pull request #12958 from jonleighton/spring

Install Spring preloader when generating new applications
add Spring as major feature in the 4.1 release notes. [ci skip]

Follow up to #12958.
remove variants paragraph indent in release notes. [ci skip]
Fix documentation of number_to_currency helper

Now users have to explicit mark the unit as safe if they trust it.

Closes #13161

Conflicts:
	actionpack/lib/action_view/helpers/number_helper.rb
	actionpack/test/template/number_helper_i18n_test.rb