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.
Fixed `columns_for_distinct` of postgresql adapter
Added partial days support to `DateTime`'s `advance` method.

You can now add partial days (e.g. 2.5.days) to `DateTime` with the advance method.
This was acheived by mimicing the `advance` implementation in `Time`.
Fixed changelog
Added documentation for the :param option for resourceful routing
Swallow bundler exceptions when running tests

Let's avoid useless output when testing stuff related to Bundler.
Remove unnecessary include for integration tests.
:scissors:
Fix Baseclass becomes! subclass.
WIP: pass existing joins to construct_join_dependency
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