Turn value into a union
Remove bad immutability
Might come back to this
Safer immutability
Merge branch 'better_immute'