Mentioned in issue #1404, columns were not being removed when changing columnDefs. This was due to that there was no tracking of differences in columnDefs and existing columns lengths. To fix this, I'm checking for columnDefs being shorter in length than columns. Whenever that happens, I'm deleting the column(s) that are not in columnDefs anymore.

For the project we're working on, the committed code is working fine. However, I don't know if this code is sustainable wrt the rest of the codebase.
Use column.name instead of column.field when retrieving colDef.
Mark functions as methodOf, rather than property
Update tutorials and ngdoc for clarity

Update tutorial for filtering to provide an example of setting
the filter programmatically.

Update the ngDoc for ui.grid:GridOptions to mark functions as
@methodOf rather than @propertyOf, which should correctly split
these into the methods section of the ui-grid.info site.

Update the ngDoc for ui.grid:GridColumns to break the properties
out into separate ngDoc blocks, which should make them more easily
visible in the ui-grid.info site.  Mark these also as @propertyOf
ui.grid:GridOptions.columnDefs, which should result in these
properties also being visible on columnDefs.
ngDoc updates, focusing on columnDefs

A pass through each module looking for settings that are set
in columnDefs, and completing ngDoc updates for each.
Merge pull request #1457 from PaulL1/documentation-updates

Updates to ngDoc and tutorial
'#1432 date editor'
\#1432
tests are failing. probably due to timezone offsets
Merge pull request #1423 from DJLemkes/3.0-remove-columns

Delete columns on change in columnDef
1.3: prefix forgotten on the nextUid function
Merge pull request #1466 from mastilver/patch-1

1.3: prefix forgotten on the nextUid function
Fix ngdoc
merge conflict resolved