A sparse variant of Python's collections.namedtuple which doesn't waste space storing None values