chore(structs): Add collection interface and array-based implementation for use in core

Fixes #7409
Merge pull request #7503 from ewinslow/structs-collections

chore(structs): Add collection interface and array-based implementation ...