Fixes: https://github.com/kdl-org/kdl/issues/306
In the specifications of KQL and JiK, replace the
usage of 'tag' with 'type annotation', as that is
the term in the main KDL specification.
Did an editorial pass over the document, rewriting most of the prose slightly.
Caught a place or two that was still referring to tags for object keys.
Sole non-editorial change was adding the final ambiguous case - a completely empty node. These are required to have an `(array)` or `(object)` tag to be valid.
`-` is slightly easier to type than `_` (no Shift, at least on american keyboards), and it's consistent with the "dummy" node name I'm planning to use for text nodes in XML-in-KDL.
(`_` is a valid XML element name, so I can't use that in XiK.)