Include the ship identifier in the schema tuple.
Better way to calculate explode.
Completely revamped the entire system.

- Slimmed down the Battle class considerably, while improving logical
  flow.
- Redesigned how ships are stored - just a flat list will do
- Removed all unneeded methods in this redesign.
- Broke down all methods within the battle module into more explicit
  chunks that represents the hard coded game logic.
- Report round information.  No damage info as that's todo, but at least
  the list of remaining ships are stored.
- All tests are rewritten.  Coverage should be good enough for now, but
  could use more failure tests.