Fix tilde constraints without a stability suffix to work like wildcard constraints.

With this fix, a tilde constraint such as ~3.1 won't match unstable versions of 3.1,
but a wildcard constraint such as 3.1.* would.  This seems like a confusing
inconsistency, and so I have corrected it.
Refactor wildcard matching to use manipulateVersionString
Formatting updates for PSR-2 compliance.
Fixed lower bound of tilde and wildcard matches.

The lower bound of ~1.2 and 1.2.* style version requirements now uses >= 1.2.0.0-dev instead of
> 1.1.9999999.9999999.  This is more straightforward to read, and behaves equivalently.
Fixed upper bound of wildcard matches.

Follow-on from 95b4348afa2ee335d9dc1f9e2fecf579b49f7ddf
Detect version based on tag if HEAD points to a tag.
Fixed the existing test and added a new one for git tag version guessing.
Use --tags to get non-annotated tags as well.
Update error message now that --dev is default

Fixes #1970.
Missing backslashes.
Merge pull request #1974 from rjmunro/patch-1

Update error message now that --dev is default
Merge pull request #1976 from drak/patch-3

Missing backslashes.
Fixed the Filesystem methods for a directory with a name that is a substring of a another directory
Unbind the filter Closure from ArchivableFilesFinder to allow the object
to be garbage collected correctly, and the folder closed.

Fixes https://github.com/composer/satis/issues/64 for PHP 5.4
Merge pull request #1981 from orukusaki/closure-fix

Unbind the filter Closure from ArchivableFilesFinder to allow the object to be garbage collected
Remove all possible cd calls, refs #1971
Make sure cd call allows switching drives on windows, fixes #1971
Add workaround for msysgit failing to handle symlinks on windows, fixes #1048, fixes #1418
Merge pull request #1979 from hason/filesystem

Fixed the Filesystem methods for a directory with a name that is a substring of a another directory
fixed escaping the path (it's no cmdline argument anymore)