A DataTable with its header
Children of this class are parametrized with the types of values that their rows can hold.