slightly better command handling, still needs an overhaul.