DSL: add `depends_on :x11`, permit multiple `depends_on` stanzas

* allow multiple depends_on stanzas + refactor
* disallow combining depends_on :macos comparison expressions
* ohai message when depends_on is present
* explicit accessors for :cask and :formula
* simplify some logic and flatten nested conditionals
* reflow incidental doc
* add depends_on :x11
* de-document `caveats` / `x11_required`