callback restructuring complete. perhaps less hellish