add Cask::SubversionDownloadStrategy

abstract out module `Cask::DownloadStrategy`, add some commentary
Merge pull request #2822 from rolandwalker/svn_download_strategy

add Cask::SubversionDownloadStrategy