Support disjoint unions; improve modelling somewhat
- `anno:Selector` can no longer be refined by `anno:State` (in cases
where an object is both).
- `awol:FeedOrEntry` is now formalized as a disjoint union of
`awol:Feed` and `awol:Entry`. This was already true, as Feeds and
Entries were disjoint and Feed Or Entry was equivalent to their
union, but this states it explicitly.
- `dcterms:LicenseDocument` is now a subclass of `foaf:Document`.
- Plumbing `dcterms:` classes which simply indicated one of a variety
of classes are now equivalent to their union, not simply superclasses
of them. This simplifies the ranges of properties which previously
indicated the union and aligns with how these classes were probably
intended. This union is _not_ defined as disjoint.
- Superfluous disjoint rules were removed from `foaf:Agent` and
`foaf:Document`; these can be inferred.