explicit UTF-8 encoding for old Rubies

This does no harm, and was sufficient to make the following
command pass on my development machine:
    ruby1.9 /usr/bin/rake test
make order consistent across Ruby vsns w/sort

Fixes #2635.  In particular, link and cookie order differ
between Ruby 1.8.7 and 2.x, causing the test suite to fail
under 1.8.7.
add `before_install` and `before_uninstall`
add Cask::SubversionDownloadStrategy

abstract out module `Cask::DownloadStrategy`, add some commentary
restore executable bits in Prepos install

Fixes #2859
trailing blank lines so caveats don't run together
Merge pull request #2871 from rolandwalker/prepros_executable

restore executable bits in Prepos install
add uninstall stanza for callnote.rb
Merge pull request #2878 from rolandwalker/callnote_uninstall

add uninstall stanza for callnote.rb
Update download url for latexit
Merge pull request #2626 from rolandwalker/explicit_utf8_encoding

explicit UTF-8 encoding for old Rubies
Merge pull request #2734 from rolandwalker/sort_predictability

make order consistent across Ruby vsns w/sort
Add dart editor
Use latest for dart editor
Merge pull request #2875 from rolandwalker/caveats_formatting_2

trailing blank lines so caveats don't run together
Merge pull request #2882 from elyase/patch-1

Update download url for latexit
Merge pull request #2883 from chrisoei/dart-editor

Dart editor
mpv 0.3.5
Merge pull request #2884 from henry0312/mpv

mpv 0.3.5
Add gargoyle interactive fiction player