[Console] Adding use cases to command as service

| Q             | A
| ------------- | ---
| Doc fix?      | yes
| New docs?     | no
| Applies to    | 2.4+
| Fixed tickets | N/A

Command as a service can be useful to give access to services and
configuration parameters in the `configure` method.

A simple use case: you want to allow the user to set an option's default
value in the `app/config/parameters.yml` file. Or the default value
needs to be computed by  a service (database retrieval for instance).

With a `ContainerAwareCommand`, this wouldn't be possible because the
`configure` method is called from the constructor, so the container
isn't set yet.
Took @WouterJ's advices into account
Fixed typos spotted by @cordoval
Added @lsmith77 and @dbu use cases
Created a new article
Fixed @WouterJ's feedback
Added warning about performances
Took into account @cordoval's feedback
Moved back and listened to @weaverryan

Moved the article from components to the cookbook.
feature #3621 [Console] Command as service (gnugat)

This PR was merged into the 2.4 branch.

Discussion
----------

[Console] Command as service

| Q             | A
| ------------- | ---
| Doc fix?      | yes
| New docs?     | no
| Applies to    | 2.4+
| Fixed tickets | N/A

Command as a service can be useful to give access to services and
configuration parameters in the `configure` method.

A simple use case: you want to allow the user to set an option's default
value in the `app/config/parameters.yml` file. Or the default value
needs to be computed by  a service (database retrieval for instance).

With a `ContainerAwareCommand`, this wouldn't be possible because the
`configure` method is called from the constructor, so the container
isn't set yet.

Original PR: #3620

Commits
-------

c8fe610 Moved back and listened to @weaverryan
e8b3320 Took into account @cordoval's feedback
11bfe50 Added warning about performances
6a7a25f Fixed @WouterJ's feedback
e137951 Created a new article
cdd534a Added @lsmith77 and @dbu use cases
a7b916e Fixed typos spotted by @cordoval
a055140 Took @WouterJ's advices into account
947ad92 [Console] Adding use cases to command as service