The original version required column names to be specified as keyword arguments and meant that any time any changes to the default model columns happened the model API would break. So that was bad. Now column names and definitions are stored in a dictionary that's a class attribute, so updating the API just means editing the keys/values of that dictionary.