replace onRoute callback with route event
update documentation
documentation and eventing