Add TableDefinition, which is a generally handy thing;  add missing license headers