add has key and making result generation cleaner for insert_one

moved friending

cleaning up the result generation for intser_one