KAZOO-3116 initial

Callback feature
Typically we put the "public" exports above in the first `-export` directive and leave the second `-export` directive as the gen_{server,listener,fsm} "internal" exports.