cut duplicated code
modify interface and commandentities
implemented commands
made some modifications
modified interface

maybe an abstract class is better?
add more commands