I think I actually fixed the bug...

Basically, what was happening (among other similar things which made it
harder to fix), is that when on zero aliens I was pushing a new row.
The row, moving left, would instantly bump into the side and create a
new row. Instead all we needed to do was reset the direction when all
the aliens die to allow a new row to move into place.

I also fixed a lot of code. More meta enhancements coming next.