finished robot class -- needs testing!