Under version 3 there is a way to have file helpers guess the file layout if you look at the examples. You can also read a CSV file as a data table but again thAt expects a class. So my thought is that you would need to combine a few techniques, read the first line to get the header info, parse it to work out how many columns there are and then create an array of that length into columns field and apply type attributes at runtime to the class so that FileHelpers knows what to expect. I think there is a specific array attribute for this but I will have to update my answer later once I get to my PC.
class dynamicArray
{
public string[] columns;
}
I haven't looked yet whether FileHelpers can utilise the type converter interfaces because if so, you can actually create a dynamic object instead based of an internal dictionary that held the name, type and value of property.
EDIT
Further to this, How can one to dynamically parse a CSV file using C# and the Smart Format Detector in FileHelpers 3.1? has a good answer on how to use the smart detection features. Coupled with your own dictionary or dataset, means you wouldn't need to know what columns where in what order.