Out of curiosity, why is there a `@...` variable in a module?  Should `Irobot` be a class?