avoid using alias in generators

Ruby's alias produces public methods, causing a spurious Thor task
to be created.  For example, this is the reason MigrationGenerator
currently has two tasks:

    > ActiveRecord::Generators::MigrationGenerator.all_tasks.keys
    => ["singular_name", "create_migration_file"]

singular_name was meant to be an attribute, not a task.  Because it's
public, it gets called as a task every time the generator is invoked.

The fix is to ensure all generator methods have the correct
visibility.
Fixes URL generation with trailing_slash: true

URL generation with trailing_slash: true was adding a trailing slash
after .:format

    Routes.draw do
      resources :bars
    end

    bars_url(trailing_slash: true, format: 'json')
      # => /bars.json/

This commit removes that extra trailing slash
[ci skip] Improve doc for ModuleConstMissing.guess_for_anonymous
print generators on failed generate

Let's say we just ran:

```
$ rails g migrate add_click_to_issue_assignment
```

We will get an error that looks like: 

```
Could not find generator migrate.
```

This patch adds all existing migrations to the output to make it easier for a developer to find a valid migration. 

```
Could not find generator "migrate". Please select a valid generator:
Rails:
  assets
  controller
  generator
  helper
  integration_test
  mailer
  migration
  model
  resource
  scaffold
  scaffold_controller
  task
```


It would be nice to do some spelling detection and suggest alternatives, but for now this should  help.
Merge pull request #15278 from akshay-vishnoi/doc_changes

[ci skip] Improve doc for ModuleConstMissing.guess_for_anonymous
Merge pull request #15293 from schneems/schneems/generator-output-in-error

print generators on failed generate
Revert "Merge pull request #15293 from schneems/schneems/generator-output-in-error"

This reverts commit 7466d6a9f989a1a8f90899b79b34f1152e440b7c, reversing
changes made to b850c4c540e8f0c15742f67c532f521a4a123655.

This was an accidental merge. A new PR will follow.

/cc @schneems
pg, extract schema definitions into separate file.

This mirrors the layout of abstract adapter and puts the definitions
inside the `PostgreSQL` namespace (no longer under the adapter namespace).

/cc @kares
pg, remove duplicated code.
Merge pull request #14986 from dlangevin/trailing-slash-url-generation

Fixes URL generation with trailing_slash: true

Conflicts:
	actionpack/lib/action_dispatch/http/url.rb
Add documentation for using Rails with a reverse proxy
Merge pull request #13988 from zzak/guides_configuring_reverse_proxy

[Guides] Add documentation for using Rails with a reverse proxy [ci skip]
Merge pull request #9083 from bronson/patch-1

avoid using alias in generators
fixed capitalization
Add FIXME note about the thor bug
Merge pull request #15298 from ShunsukeAida/fix_capitalization

fixed capitalization [ci skip]
rake stats for engines
documentation fix
Merge pull request #15264 from Gaurav2728/gaurav-documentation_fix

documentation link fix and removing unused reader
Merge pull request #15299 from andriytyurnikov/engine_friendly_rake_stats

rake stats for engines