add subversion dependency support

This PR is much smaller than my previous attempt. The 'present' specification was removed and the 'svn' one simplified significantly.
Because svn URLs can specify trunk/branch/tag and revision, there is no separate specification of revision. This is documented briefly in README.md. I don't have any public svn material to make available in the packages file.
From distant memory, I'll wish you Joyeux Noël, et bonne Nouvelle Année.
I've never seen this before, what does `:` do?