Multiple pieces of data attached to multiple states
The answer to this was the field collection module (alternatively, multifield can be used).

This allows you to create an unlimited amount of field collections, and served my purposes perfectly.