[Mac] Add per-plugin exceptions to content settings.

Screenshot: http://www.dropmocks.com/mXMd

I'm adding a subclass of NSArrayController, TableModelArrayController, that binds to a RemoveRowsTableModel that can use groups and displays them using group rows in an NSTableView. This cleans up SimpleContentExceptionsWindowController a lot, and the class could also be used for other table models that use groups (keyword editor and autofill).

XIB changes: In SimpleContentExceptionsWindow.xib, bind table view to TableModelArrayController instead of using the dataSource outlet. Buttons call actions on TableModelArrayController, and table view delegate also points to it.

BUG=39252
TEST=SimpleContentExceptionsWindowControllerTest.*:TableModelArrayControllerTest.*:PluginExceptionsTableModelTest.*

Review URL: http://codereview.chromium.org/3327016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59501 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index ea56d825..e7f007b 100644
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -1085,6 +1085,8 @@
         'browser/cocoa/tab_view_picker_table.mm',
         'browser/cocoa/tab_window_controller.h',
         'browser/cocoa/tab_window_controller.mm',
+        'browser/cocoa/table_model_array_controller.h',
+        'browser/cocoa/table_model_array_controller.mm',
         'browser/cocoa/table_row_nsimage_cache.h',
         'browser/cocoa/table_row_nsimage_cache.mm',
         'browser/cocoa/tabpose_window.h',