Currently, there is a lot of boilerplate involved in creating a plugin. We can reduce this be creating a few abstractions – e.g., ColumnGeneratorFullColumn and ColumnGeneratorCellByCell. Basically, we should be able to remove the need to define the generator metadata, which is sort of confusing as it is currently implemented.