Rename sent_cb to on_complete_cb

Update documentation and renamed sent_cb to something that makes a little more
sense.
Add on_complete_cb unit test