checkbox API

Some refactoring and cleaning up

ngReactGridCheckbox API to set header and row checkbox values. Option to target checkboxes in rows with specified field value.

Example:
```
var checkboxGrid = 
  new ngReactGridCheckbox($scope.selections, 
      {batchToggle: true,
       disableCheckboxField: 'disableCheckbox'});

/* After pushing into grid.columnDefs */

// de-selects checkbox in header when batchToggle is enabled
checkboxGrid.setHeaderCheckboxState(false)

// Selects all non-disabled checkbox in active table page. Updates bound selectionTarget object
checkboxGrid.setVisibleCheckboxState(true); 

// Selects only checkbox in rows whose 'user.firstName' in grid.data value is 'Jose1'
checkboxGrid.setVisibleCheckboxState(true, {targetCheckboxes: {key: 'user.firstName', value: 'Jose1'}}); 
```