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.
Package should have download options
Package options must be passed as argument to downloader
Package options should be dumped if exists
Package options must be a non mandatory array and should be loaded when
exists
Repository options must be replicated on package when dist file is under
repository base dir
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
Merge remote-tracking branch 'upstream/master'

Conflicts:
	src/Composer/Downloader/FileDownloader.php
Implemented Pre/Post Archive Script Events

The script events `pre-archive-cmd` and `post-archive-cmd` can be used
to perform any tasks necessary when archiving the composer project.

This functionality can be used to run unit test or and other build
process before archiving, and can be used to distribute the archive
when completed
added a indicator in the info-message on --optimize
Merge pull request #2589 from staabm/patch-1

added a indicator in the info-message on --optimize
Add API rate limit and two factor authentication doc
added config option to optimize the autoloader always
added information to the docs
changed name of the option to optimize-autoloader
use optimize-autoloader config param in update and install commands