use classes instead of passing around opaque lists of lists of strings :)