optimize: new(): now we no longer reference the "callbacks" table argument but just take a snapshot of it.