A rough sketch of what attacking might look like is now implemented.

Also some small refactorings to the model.  Should probably start
thinking about pulling out functionality into a player class.