A type-safe heterogenous Map or a Named field Tuple