Fixed: CPCollectionView range bounds exception if shift key was held for first selection

Previously, if you held down the shift key while making the first selection in a CPCollectionView it would raise an exception claiming {-1, XXX} was out of range. This was because `firstIndex` returns CPNotFound (-1) if nothing is selected.

In Cocoa, holding down the shift key while making the initial selection behaves as if you made an initial selection.

This commit catches a CPNotFound and sets the first index to the index of the item under the mouse pointer.
Merge pull request #1938 from ahankinson/fix-collectionview-shiftselect

Fixed: CPCollectionView range bounds exception if shift key was held for...