Started refactor of command/interface separation.