implementation notes of Gist::insert() and others