Add ReporterInterfaceTest and include in test for reporter roles
Rewrite RobotTest to verify delegation

This commit focuses on verifying that command messages are being
sent. It renames public interface methods for the placement object.
It removes the ! from rotate!() and update!(). It does
this to target a more consisten interface.
Rewrite Robot to pass RobotTest