added svn tags, trunk, branches handling for root packages; minor interface fixes

Currently there is no handling available for svn based packages.

We have svn repository:

/ProjectA/trunk
/ProjectA/branches/...
/ProjectA/tags/...

/ProjectB/trunk
/ProjectB/branches/...
/ProjectB/tags/...

in ProjectA we want to require: "my-vendor/projectb": "self.version".

now, when we create a branch dev-latest-testing in ProjectA, it should reference the branch /ProjectB/branches/dev-latest-testing, without always have to change the "version" parameter in composer.json for all our branches.

I guess this PR, will add this function.

Your feedback is really appreciated.