Refactor struct_lookup to support spruce paths.
Refactor struct_lookup to support spruce paths.

`struct_lookup`, which is used by `genesis lookup` as well as internal
data mining of structures, now supports spruce's method of referencing
array element by anonymous keys (namely name, key or id) as well as dot
notation for array index (as opposed to brackets)

This fixes the manifest generation issues found in v2.7.20

starkandwayne/genesis,starkandwayne/genesis,starkandwayne/genesis