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
Add remove command to remove a package from the list of current installed packages
Don't throw an exception if the called script is not one of the
event-scripts. This makes it possible for one to define their own
scripts like "make-release" etc.
Throw an exception if no listeners have been found for given event.
Check if a given event has registered any listeners. If not the script
is not defined in the composer.json file
Don't throw exception in the doDispatch method.
Added a new method to check if an event has any listeners registered.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	src/Composer/Downloader/FileDownloader.php
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