structural overhaul of callbacks and function naming.