Modified code
Defined Robot abstract base class for
subclassing to more specific robot
architecture classes