Introduce OnPostCommand, moved commands related classes to different package. Close #2