Extend and modify ListStore bindings.

This change adds the InsertBefore and InsertAfter bindings for
ListStore.  While developing these bindings, it was determined that
the correct way to pass unset iterators to cgo is to create them in
gotk3 code itself and return a pointer, rather than insisting the
caller know the difference between a set and unset iterator.