Clean up execution model and add input command. Done! (I think)...