added IColumnDef additions by @kentcooper and added a test for IColumnDef interface