I think this was a deliberate decision -- I wanted to use the more specific `AbstractCommand` rather than the more generalised `CommandInterface`. Does this class invoke any methods that are defined on `AbstractCommand` but not on `CommandInterface`?