So what if I made immutable. You can only set once and unpack to a function that can name the values. I could also drop the valueOf usage.
Does that sound saner? It is definitely simpler and a lot closer to an actual tuple implementation.
I want to turn this into a small repository so maybe I will take the little good bits and drop anything unnecessary.