many improvements to callable interface
all references to function -> callable