Added moving around, changed command implementation into something more flexible