added basic command processing