Derek,
What about an array of type-def clusters? The cluster would define the row data types and row appearance, and the array would define the table's size and appearance.
Would you please re-state the italicized section from your product suggestion, "There is no easy method of embedding enums, booleans, etc. to any current table or list
without full-time development on that portion alone". If you mean that you must modify the type-def cluster to change the table fields available, then I agree.