split the create out of the sort part.
add missing size param and fix return type and ...

rename key_list within sorting function.
hash table draft 1