Fix issue where none root composer.json could be used by ArtifactRepository http://www.php.net/manual/en/ziparchive.locatename.php#85512
Improved variable name.
Improved the handling of trunkPath

- $this->baseUrl is only used if $this->trunkPath === false, otherwise
we will use $this->baseUrl with $this->trunkPath.
- scanning through trunkPath will now look for composer.json file
instead of a path that matches $this->trunkPath, beacuse checking
against the latter failed with deeper trunkPaths
- $this->rootIdentifier is now 'trunk' no matter how deep
$this->trunkPath is (with deeper trunkPaths, the name became something
like "dev-trunk-devel-team-packages-package"
Fixed a coding style issue

Missing a space between if and (
Add a warning for unbound constraints in the validating loader

Closes #2165
Added a new FAQ entry about unbound version constraints
replaceVersion() method added
Comment fix
correct small bug, source files aren't installed and removed from the same path (problem with targetDir package attribute)
Replace %name% with %package% in 05-repositories.md
Improved package sorting
Coding style compliance
[tests] Unit tests for JsonValidationException class
[Archiver] Rules in GitExcludeFilter are too broad
[Archiver] comment for a confusing line
Bail out of the normal 401 handling routine when the origin is GitHub
Test if the 401 was caused by 2FA and ask for OTP if appropriate
Add GitHub OTP to request headers
Trim whitepsace from each argument
Remove GitHub OTP code from RFS class