Update SvnDownloader.php

added --ignore-ancestry to the switch statement because it can be a problem with svn:properties
Throw RuntimeException when ambiguous reference was found.
improve exception message
fix plural in exception message
use statement
remove duplicity
Add auth for private, non-GitHub repos (#2826)
show warning only instead of throwing exception
Change elseif to if.
Merge pull request #2838 from timroberson/issue-2826

Add auth for private, non-GitHub repos (#2826)
Update SvnDownloader.php
Merge remote-tracking branch 'sebbrandt87/master'
Refactor code so it works cross-platform, refs #2825
Attempt using bash on windows if it is available, fixes #2831
Merge remote-tracking branch 'johnikx/ambiguous-reference-warning'
Refactor to avoid global static state
Fix test because the order of filesystem iteration is non deterministic
Don't show Ambiguous class resolution warning if class when not ambiguous
if a class or interface is defined twice in the same class, this should not produce a warning
Merge pull request #2855 from karptonite/patchambiguous

Bugfix: Don't show Ambiguous class resolution warning when not ambiguous
Specify how ~ constraints handle pre-releases

The "next significant release" a.k.a as the tilde version constraint
would not install a pre-release (alpha, beta, RC) which is not in the same
version namespace.

But in the examples so far it was shown as `~1.2` equals `>=1.2,<2.0` which
would actually install `2.0-beta.1`, because it the pre-release is before
the `2.0` release.

See https://github.com/composer/getcomposer.org/issues/64