Prevent noisy warning in test case

We now have a separate test for unknown keys.
Add ^{:added …} metadata to CLJS vars
Add ns docstrings
Use `options-specs` in arglists to refer to option vectors

As opposed to compiled option specification maps.
Move normalize-args into "Legacy API" section

This function is a shim for the old cli/cli function.
Clean up dalap metadata in test file
Add public function clojure.tools.cli/get-default-options

Users should be able to extract the default map from their own option
vectors without calling parse-opts with an empty args vector.
Add :no-defaults option to parse-opts

While attempting to compile options from multiple sources, I discovered
that it was difficult to extract only the subset of options actually
specified in a given input line.

With :no-defaults and get-default-options, constructing an option map is
much more flexible than before.