Getting the selected cells from a wxPython grid

Getting the selected cells from a wxPython grid is a little tricky, because you have to use a different method depending on which of the following scenarios applies:

A single cell has been selected
Multiple cells have been selected via Control+Clicking
A range of cells has been selected via dragging

The following two functions will return a list of [...]