Properly deduce and wrap vector sub-types

Type definitions for items such as nested (struct) types require a
different definition that may have been provided in the TypeList
definition. Instrinsic types are still handled the same way.