event counter: Create source file, move report() there
event counter: remove duration call counting

It's just for explosions, so it should not be a bottleneck.
Event counter: print info more compactly

Per-loop stats, averaged over 500 loops:
- Collision checks: 261
- Movement calls: 63
- Loop time in ticks: 17
- Per-section game logic times: _ 2 _ _ _ _ 5 6
- Total game logic time in ticks: 15
data: update alien and bonus images

Reworked the images with bilinear instead of bicubic sampling from the
original.  They look more symmetric now.

Small bonus ship size has been reduced to 16x7 pixels.  The "pixelated"
image in the original is 16x7.  It's hard to resize cleanly to 18x8.
game entity: Remove cleanup_draw() function

It's just a wrapper around draw() now.
game: draw shields with either tile layers or game objects

Don't do both.

Per-loop stats, averaged over 500 loops:
- Collision checks: 263
- Movement calls: 63
- Loop time in ticks: 17
- Per-section game logic times: _ 2 _ _ _ _ 5 3
- Total game logic time in ticks: 12

Game logic time: 15 -> 12 ticks
game: Separate shield group and shield collision checks

Makes the code easier to understand.

Also seems to make the game faster...

Per-loop stats, averaged over 500 loops:
- Collision checks: 194
- Movement calls: 63
- Loop time in ticks: 16
- Per-section game logic times: _ 2 _ _ _ _ 4 3
- Total game logic time in ticks: 10

Collision checks down from ~260 to ~200.
Game logic time down from 12 -> 10 ticks.