Make caveats a first-class member of the Cask DSL. It no longer has to
be specified with "def caveats", but can be given as "caveats do ... end"
as with after_install blocks.
In addition, create a mini-DSL which can be used within caveats blocks,
providing standard messages when manual installers must be used,
reboot-required, etc.
Add alternate form: caveats can also accept a compile-time string for
simple cases.
This is 99% compatible with old Casks, as it still works by defining
a caveats method. However, all Casks containing caveats are cleaned
up and adapted according to the new DSL.
Full docs in CONTRIBUTING.md.
Mostly this is spelling, capitalization, and whitespace. One
substantive change is updating the list of fields given in FAQ.md
to match CONTRIBUTING.md. Also incorporates suggestions from @NanoXD,
removing an old paragraph from FAQ.md re: nested containers.