Have commands return outcomes instead of booleans, add NOOP & EXIT outcomes and use them to create exit command