fix(uiGridHeader): handle leftover pixels

Grid widths that can't be equally divided among columns (i.e. 500px / 3
columns == 166px with 2px leftover) was leaving the 2px visible at the end
of the grid. This fix divides the extra pixels among the columns starting
at the front.
feat(Native Scrolling): Adding native scrollbar handling

Enabled by default.
Make virtual scrolling only require setting one parameter, not two
Update to newest karma
Disable iOS tests, increase karma browser activity timeout
Remove debugger statement
Add demo grid to homepage
feat(rowSort): Added row sorting

Also refactored quite a lot of Grid functionality; added rows processors,
menus, etc.
Documentation cleanup
rename enableColumnResizing to enableColumnResize for 2.x compatibility
Revert "rename enableColumnResizing to enableColumnResize for 2.x compatibility"

This reverts commit c715e0ff18adf6b8758d7de9b3698b162ce1e0c1.
add legacy support old enableColumnResize option

added requirement of ui-grid-resize-columns directive to grid so you
don't pay the price of resize preprocessor when many grids are used.
Updating TODO
Merge branch '3.0' of https://github.com/angular-ui/ng-grid into 3.0
Account for sort icon and column menu when resizing columns
Use i18n for column menu, tweak sorting doc and TODO
Update angular library versions for testing
refactor cellEditTemplates; document edit features in tutorial
add getExternalScopes attribute to ui-grid; move ui-grid-cell directive into it's own file
do not rebuild columns in datawatch function