Implement more commands, command system redeisgn