Different idea using compass roses and written by TDD because I'm too uncoordinated to do it well from the REPL