add an Index port type

The Index type represents an index in a vector of values, usually paired to a vector of labels. Nodes should probably offer an index enum for clarity, see the BlendNode as an example.