move utility methods inside module namespace

Cask::Utils
detect need for "brew cleanup" in doctor

User will receive a warning if more than one copy of Homebrew-cask
is installed.

References: #4857
correct link for SubEthaEdit 3.5.4

former (unversioned) link was broken
standardize the recommended upgrade command

in both docs and error messages.

Recent bug reports indicate that `cleanup` commands are essential
in some situations.
don't use Markdown-style backtick in error msgs

Because backtick has a different meaning in the shell, and the user
may copy-and-paste such text.

Some light re-wording included as well, and a reference to "brew cask edit"
changed to "brew cask cat" for simplicity.
switch to `diskutil` for eject

Mostly to see if this reduces random Travis errors, but also
because `diskutil eject` is a documented interface, and
`hdiutil eject` is not.
Merge pull request #4964 from rolandwalker/namespace_utils

move utility methods inside module namespace
Merge pull request #4963 from rolandwalker/doctor_brew_cleanup_needed

detect need for "brew cleanup" in doctor
Merge pull request #4969 from rolandwalker/doc_standard_upgrade_command

standardize the recommended upgrade command
Merge pull request #4970 from rolandwalker/no_backtick_in_error_messages

don't use Markdown-style backtick in error msgs
Annotatate unexpected $LOAD_PATH in doctor

Warning if first element is not Homebrew-cask's own lib dir
Merge pull request #4965 from rolandwalker/doctor_load_path_annotation

Annotatate unexpected $LOAD_PATH in doctor
Added WD Security
Merge pull request #4947 from callumacrae/wd-security

Added WD Security
Merge pull request #4975 from rolandwalker/diskutil_eject

switch to `diskutil` for eject
Merge pull request #4974 from rolandwalker/sub_etha_edit_3.5.4

correct url for SubEthaEdit 3.5.4
update minitest gem to 5.3

Sync up with Homebrew.  Solves the following problem:
```bash
$ bundle exec rake test
... minitest/unit.rb:19:in `const_missing': uninitialized constant MiniTest::Test (NameError)
	from /usr/local/Library/Homebrew/test/testing_env.rb:91:in `<module:Homebrew>'
    ...
```
disable minitest-colorize

solves this error:
```bash
$ bundle exec rake test
...lib/minitest/colorize.rb:88:in `<top (required)>': undefined method `output=' for Minitest::Unit:Class (NoMethodError)
...
```
define global `shutup` method (temporary)

solves the following error:
```bash
$ bundle exec rake test
...
NoMethodError: undefined method `shutup'
...
```

This is not a permanent solution.  The test suite should be changed
around to find the new `shutup` method, which is still in Homebrew,
but no longer global.
Merge pull request #4982 from rolandwalker/test_env_changes

Adjust to Homebrew's test environment changes