Best way to add/remove to an NSMutableArray managed by an NSArrayController
I've got a `NSMutableArray` (containing `NSMutableDictionary` instances) bound to an `NSArrayController` (the `NSArrayController` is in turn bound to `NSTableView` columns).

What is the most Cocoa-, and KVO- friendly way of, **programmatically** :

- adding a new empty object (`NSMutableDictionary`) to the array?
- removing currently selected object? (after removing, the previous item - if exists - should be selected)

*I've always been doing this in a way I don't particularly like - and I'm sure it's not the best way around (too many lines of code for something so simple : in Cocoa that indicates a wrong take on the subject :-)).* 

So, what are your opinions on that?
Best way to add/remove to an NSMutableArray managed by an NSArrayController
===

I've got a `NSMutableArray` (containing `NSMutableDictionary` instances) bound to an `NSArrayController` (the `NSArrayController` is in turn bound to `NSTableView` columns).

What is the most Cocoa-, and KVO- friendly way of, **programmatically** :

- adding a new empty object (`NSMutableDictionary`) to the array?
- removing currently selected object? (after removing, the previous item - if exists - should be selected)

*I've always been doing this in a way I don't particularly like - and I'm sure it's not the best way around (too many lines of code for something so simple : in Cocoa that indicates a wrong take on the subject :-)).* 

So, what are your opinions on that?