Create a custom namedtuple with less restrictions and more code sharing