renamed name functions to key functions, fixed several non-error throwing assertions