change preProcess from private to public

I need to override the preProcess method from a child class.

The use case is related to package renaming in a private satis repository. I understand the implication for packagist (and other public repository) but keeping the root packageName cause problem when you need to rename a package.

I will override override the name assignation with this

```PHP

// use the main identifier if name is not present
$data['name'] = !isset($data['name']) ? $this->packageName : $data['name'];

```
Fix use of non existing ->getIO() function
Issue #3422

https://github.com/composer/composer/issues/3422
Don't display the dev warning time when running self-update

Use the Application::find() method to resolve the command name, as Application::getCommandName() only returns whatever was entered as the first argument.
If the user only entered enough of the command to be unambiguous (eg self-up) then the warning would still show
By calling Application::find() we ensure that if we are going to run the self-update command then we will not show the warning, no matter what the user entered
Added some tests for the dev version warning
Backup/restore Composer environment variables

The tests could fail if an environment variable replaces an expected
value.
Revert "Backup/restore Composer environment variables"

This reverts commit 725a4fd638c7f339cdf5f1daaff0899bdbca24d3.
Allow reading of COMPOSER_ environment variables to be disabled
Update config tests to not use environment variables
Merge pull request #3448 from cs278/config-env-test

Fix config tests when environment variables are set
Merge pull request #3264 from duncan3dc/remove-self-update-warning

Don't display the dev warning time when running self-update
Merge pull request #3423 from Michael-Gusev/patch-1

Issue #3422
Literals on rule are now public

This causes a reduction of ~500k function calls for packagist composer
update (~14 million total).
Make project id public

Reduction of rougly 1.3 million function calls on packagist update
Move public properties to top and document them
Make ruleById lookup table in rule set public

Saves about 500k function calls on a packagist update
Remove unnecessary pool reference from rules
Recreate getLiterals method for BC
Improve docblocks of public properties
Add back ruleById function for BC