added a commandrunner and queue class