Removed magic numbers in canMoveRight. It also uses a loop now. Added support for default music volume.
Refactored moving left and moving down. Less magic numbers, more loops.
Refactor: bracing style. Renamed temp variables and the thud() method.
Removed magic number (0) from summonGhostTetromino(). Removed all temp names. Decoupled row clearing methods.
Undid last change to summonGhostTetromino (it actually needs the state parameter). Uses a static final constant instead.
Removed yet another magic number (spawn offset).
Refactor: renamed gc, g, and dt (gameContainer, graphics, and deltaTime).
Now ScoreKeeper keeps track of number of rows cleared.
Refactor: new brace style, constants uppercase, and renames to gc and g (gameContainer and graphics).
Refactor: brace style, renaming gc and g (gameContainer and graphics). Replacing loop unrolling with just loops for scalability.
Refactored more loop unrollings into just loops. Looks like that's all.