Support for no-op plugins when empty strings

Covers #1324 and was also brought up in transitions, empty strings are now generally considered no-ops. Mostly for mustache ref plugin names, e.g.: `decorator={{foo}}`, `intro-outro={{foo}}`, `{{>foo}}` (also safe on empty string static partial template.

Also changed the view hierarchy plugin lookup to match if the registry has the key and return that value, even if it is undefined.