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
Add a cask for cert-quicklook plugin
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.
support CAB archives
enforce: certain DSL elements may appear only 1x

add CaskInvalidError exception, which ought to be used in
several other places as well
Change default hash to SHA-256.
add `before_install` and `before_uninstall`
HPULoad latest
upgrade toad-mac to latest version
Wacom Bamboo Tablet 5.3.3-3
Merge pull request #2797 from simschla/upgrade-toad-for-mac-cask-to-108

upgrade toad-mac to latest version
Add callnote v2.3.7
Merge pull request #2798 from leoj3n/wacom-bamboo-tablet-5.3.3-3

Wacom Bamboo Tablet 5.3.3-3
Process SystemCommand arguments in list format

Previously, SystemCommand commands and arguments were processed as
strings which caused problems during shell interpretation if the
arguments were not escaped properly.  Now all commands are expressed
as arrays and no longer require their arguments to be escaped.
Additionally, stderr and stdout could have been interleaved in the
past and now they are always separated.
Merge pull request #2796 from leoj3n/hpuload-latest

HPULoad latest
Merge pull request #2624 from vmrob/system-command

Process SystemCommand arguments in list format
Merge pull request #2748 from rolandwalker/only_once

enforce: certain DSL elements may appear only 1x
Update Adobe Air to 4.0
devscript: support -t opt in list_running_app_ids

and refactor
Merge pull request #2803 from rolandwalker/running_app_test

devscript: support -t opt in list_running_app_ids