iterator: Refactor GstIterator to be more binding friendly and have saner refcounting