See the Wikipedia for the rules of the three musketeers game.
The "board" is represented as a list of five lists; each of these lists represents a row, and each list contains five elements. The first list represents the first row; the first element in each list represents the first column. The values in the list must each be one of three things: an 'M', representing a Musketeer, an 'R', representing one of Cardinal Richelieu's men; and a '-', representing an empty space. board is the one and only global variable in this program.
Directions are given as one of the four strings 'left', 'right', 'up', and 'down'.
Starter code can be found on GitHub at https://github.com/DavidMatuszek/ThreeMusketeers. My job is to complete the program, writing both the tests and the code.