executor added
Merge origin/master
event model from guava