Support for hasValue and hasSelf.
Fix to add-subpropertychain.

This method was adding empty property chain clauses when
superpropertylist was nil (i.e. most of the time). This in turn was
causing breakage with hermit.
Fixes and better support for oneof.

This involves new functions to distinguish between literals and individuals,
a change of getliteral to literal. All the multimethods now bind to the var
rather than function to enable re-evalling as defmulti has defonce semantics.
Test for data-oneof and literal change of name.