BUGFIX: don't try autocleanup inside system dirs

This safety feature addresses #2650 somewhat indirectly.
A list of system directories is defined.  When the uninstall
process encounters a "system directory" it does not touch that
directory at all
- no chmod on that dir
- no search for broken symlinks in that dir
- no cleanup of .DS_Store files in that dir
Explictly listed files from a pkg receipts are not affected by
this change.  Individual files will still be removed, even if
those files are in a special "system directory"
Emoji and disk usage stats at install success

- consistent with Homebrew output
- respects Homebrew environment variables
- does not add any Homebrew code dependency
- really just for fun
drop non-alpnanumeric chars from Canonical Name

following up on #2659, further steps toward an algorithmic
derivation of Canonical Name from App Name.

Also add two rules about hyphens which are implied and already
followed by every Cask.
ability to specify container type, not detect

Fixes #2997.  Interface is optional DSL stanza `container_type`.
This should only be used in rare instances.  It is needed for the
case of a naked executable which should not be unpacked.
add "doutdated" example external command

it acutally does something useful, unlike my previous examples
doc that vendor/upstream URLs are preferred

(unfortunately adding words to CONTRIBUTING.md again)
accept multiple arguments to uninstall/:pkgutil

We may as well do so, the previous behavior was a bug:
multiple elements were silently concatenated into a single
regexp.
quiet "move to applications" popup for github.rb
New cask: wowhead-client 1.2.2
Merge pull request #3244 from rolandwalker/github_move_suppress

quiet "move to applications" popup for github.rb
Merge pull request #3212 from rolandwalker/doc_vendor_url

doc that vendor/upstream URLs are preferred
Merge pull request #3190 from rolandwalker/example_cmd_doutdated

add "doutdated" example external command
Merge pull request #3251 from res0nat0r/wowhead-client-1.2.2

New cask: wowhead-client 1.2.2
Merge pull request #3252 from linc01n/totalfinder

Update Totalfinder to 1.5.19
Merge pull request #3175 from rolandwalker/doc_cask_name_drop_characters

drop non-alpnanumeric chars from Canonical Name
rename join-me.rb

to joinme.rb
per naming rules in CONTRIBUTING.md
rename tune-instructor.rb

to tuneinstructor.rb
per naming rules in CONTRIBUTING.md
Merge pull request #3254 from rolandwalker/rename_tune-instructor

rename tune-instructor.rb
Merge pull request #3253 from rolandwalker/rename_join-me

rename join-me.rb
Upgrade Hopper to v3