Add a gecko-based implementation of ThumbnailViewer

This is useful in applications using Gecko, since the old
ListView version suffers from a sticky scroll thumb when
a GeckoFx windows is in use.
This file is the almost-unchanged original ThumbnailViewer.cs, which has been replaced by a wrapper. I think all I changed is to add the HasSelection property, so that SelectedItems is not exposed.