Made significant progress on basic gameplay.

What I have up to now:
A game ticker, which brings the block down after a certain number
of ticks, or rounds, which can be sped up or slowed down.  Using
the down key speeds it up a little, although I would prefer it
bring the block down much faster.

The block now respects all boundaries (left, right and also does
not fall through the bottom) and the option to move the block
upward has been removed.  Rotation now is only successful if
the block would remain inside the grid entirely after rotation.

Landing a block (whether on top of another block, or at the
bottom of the screen) makes it land and loads the next block, as
in the original.  Two things have not been implemented yet:
	1. You do not get a chance to slide blocks in underneath
	   other blocks before they lock in.  My main idea for
	   implementing that right now is to only lock the
	   active block on ticks, rather than having it happen
	   as soon as it lands.
	2. I still haven't implemented clearing rows yet.  I
	   have a very clear idea of how to do that, which is to
	   pop the row in question and then push a new row on top.