Add ability to call custom function for group summary ONCE only.

* Added customSummaryFunction (bit) to groupingView.
* Added summaryFunction (string) to groupingView.

SummaryFunction is only used if customSummaryFunction is enabled.
If customSummaryFunction is enabled, the original summary calculations are
bypassed. In groupingRender it will call the summaryFunction once per group,
instead of calling it per once per group per field (where val was being appended to).

The requirement for this change is to allow a server side callback to retrieve the groups
summary calculations (these calculations are being handled server side). This
allows multiple summary types to supplied and output to the grid.

Another requirement is that in most situations the entire grouped data is not sent
back to the grid, so the built in summary calculations do not account for data that is not
being rendered at the time. The server side callback allows for the correct
summary values to be output.