[English]

There are 4 modules:

game_state.py
  This contains all things related to the formal aspects of the game,
  such as the game state, functions that are used to advance the game
  state, and others.

visualizer.py
  Contains all code related to visualizing the game state. Mainly,
  there is a procedure called 'paint' that accepts a game state and it
  prints a representation of the game state in the terminal window.
  In this module, we decided not to follow the path of strict
  functional programming -- we believe it was more suitable to create
  a helper class called 'canvas', which enabled us to draw onto it and
  in the end, put the contents of the canvas into the terminal.

game.py
  Integrates the formal aspects of the game with the graphics and
  interacts with the user. (Reading user input and sending informative
  messages is not related in any way with the formal game, nor with
  visualization of the game.)
  We didn't strictly separate the formal aspects of the game from this
  module -- for example, this module determines what number the player
  has rolled. (One could argue that this is part of the game, and
  therefore it should be a part of the game state. Whenever a new
  game state were created, we would set this variable 'dice' to a
  random number from 1 to 6.)

test.py
  The task of this module is to test the correctness of the transition
  function 'move_piece' from game_state.py.

------------------------------------------------------------------------
[Slovensky]

Máme 4 moduly:

game_state.py
  V ňom su uložené všetky veci týkajúce sa samotnej hry (keď sa na
  hru pozeráme z formálneho hľadiska) -- stav hry, a funkcie pracujúce
  so stavom hry.

visualizer.py
  V ňom sú uložené veci týkajúce sa zobrazovania stavu hry na obrazovku.
  Hlavne teda funkcia 'paint', ktorej posunieme stav hry, a ona ho
  vykreslí na obrazovku. Tu sme si odpustili čisté funkcionálne
  programovanie -- prišlo mi vhodné vytvoriť pomocnú (mutable) triedu
  'canvas' (akési plátno), na ktorý vieme kresliť a na koniec ho
  zobraziť na obrazovke.

game.py
  Stará sa o integráciu formálnych častí hry s grafikou a interakciou
  s užívateľom. (Načítavanie vstupu, a podávanie oznamovacích hlášok
  nesúvisí nijako s formálnou hrou, ani s jej zobrazovaním na obrazovku,
  a preto je v samostatnom súbore.)
  Trochu sme si odpustili úplne striktné oddelenie formálnej časti hry
  a tohto modulu -- v tomto module sa napríklad rozhoduje, aké číslo
  sa hodí na kocke (o čom by sa dalo argumentovať, že je súčasťou hry
  -- bolo by to uložené v stave, a vždy, keď vytvoríme nový stav,
  nastavíme mu túto premennú 'kocka' náhodne od 1 po 6).

test.py
  Úlohou tohto modulu je testovať korektnosť prechodovej funkcie
  'move_piece' z modulu game_state.py.
