update readme
use callback for main control flow instead of
events to prevent race conditions