Make validation enforcing

This makes the top-level wrapper and handling unnecessary.
Resource needs to be resolved before plugins can be applied
Drop dead code
Move instance handling into instance resource

This is mostly a wholesale move of the relevant code. It needs a bit of
cleanup also to drop artifacts from the previous translation-based
validation.

There's still some logic living outside the library, like importing
plugins and resolving "resolvable prefixes". This makes the hc2000
front-end actually manageable.
Drop translation-based validation remnants

Validation of resource data has been independent of translation to API
calls for a while, but there were still "ignore" remnants lying around.
Symbolic values are now a plugin available to all
Add virtual 'default' plugin

So clients don't need to maintain their own plugin lists, but can still
opt-out of "extras".
Put resource in charge of its own plugins

While it may be nice to keep plugin code outside of the resource (and
while this is way too simple for now :-), plugins are really a way to
extend and connect different resource types.

As such, they should be in charge of their own customization points. In
the case of instance, there could potentially be pre-launch and
post-launch customization points.