Update subversion module to work better with check mode

Adds needs_update() method which will inspect the checkout for the
current revision and then the HEAD.  If the local check out is behind
HEAD, this will report changed=True and supply the revision numbers.
Merge pull request #2319 from sfromm/svn-check

Update subversion module to work better with check mode