First of all, I am somewhat of a noob. I programmed in Applesoft Basic, with some exposure to Turtle Graphics and machine language code, and DOS from the 80's.
More recently I have done some programming using Microsoft's Visual Studio (a 5x5 tic-tac-toe game that kept score on the wins but never went back to program a player vs. computer option).
I have dabbled with Java and Python but have not gone too far past the initial Hello World codes. Well, maybe a little bit past.
So based on that inexperienced background, I would like to put my 2 cents in about the instructions provided for this challenge.
I was confused by the fact that Thor was moving in-spite of not having direct control of his X, Y coordinates (now that I think about it, probably best because then one could program him to instantly appear at the light coordinates).
Also, why did I have to "read" the remainingTurns when that variable did not show anywhere in the rest of the code and we weren't told to use it for anything?
Maybe have information in the hint part of the instructions that says something similar to the following;
"The calling program will use the compass direction output to move Thor but your code needs to keep track of Thor's new location.
Also, the calling program uses remainingTurns for (whatever reason) and this is just to see if you understand how to program a "read" in the specific language you are coding in."
Or something like that.
Again, just my inexperienced 2-cents.