External sorting api, a gridOption and an event

Add external sorting api, gridOption.useExternalSorting, and
api.core.on.sortChanged().

Includes unit tests of the sort suppression (but not the
event raise, as there weren't existing sort unit tests) and a
tutorial demonstrating the usage.
Merge pull request #1539 from PaulL1/external_sort_events

External sorting api, a gridOption and an event