Reformatted spacewar.py with a linter.

Used Sublime Text 3 with the flake8 plugin; code is much less
messy-looking without any functional changes.
Fix divide-by-zero error in Torpedo.__init__()

If you shoot at the same hex you're currently in without moving, you can
guarantee a divide-by-zero error. Similar to how phasers handle the same
issue, it now shoots directly to the right.
Change fire_phaser() logic accordingly

Theoretically, this shouldn't change anything, but it's remotely
possible that it could've gotten caught with some infinitesimally-small
floating point value that either never accumulated properly to escape
the while loop, or was accumulating so slowly it would hang the program;
using the same logic as just added to Torpedo.__init__() should avoid
either case.
Fix unlocalized string reference

The promotion message was using the bare rank value instead of the
localized version thereof.
Add home_player in case of future multiplayer

Add a home_player variable and remove the hackish solution to finding
which ship was commanded by the user after the battle ended; also a
slight localization file change to differentiate between the user and
any other human players (even though there can't be any yet).
Proper random selection items in Instant Action

Properly generate menu items for every random selection item defined in
the theme, rather than assuming there will always just be one
("campaign" characters already did this properly).
Prefer up/down graphics to left/right graphics

Just a little aesthetic difference.
Change saving from an OrderedDict to a dict

Instead of creating a copy of the OrderedDict, put it into a dict; given
the way YAML saves standard dicts, that should make key order in save
files always be alphabetical. Either way, we don't REALLY need to
preserve key order in save files, so let's stop doing it.
Don't force a "kills-sentry" stat

If a theme doesn't have sentry guns, there won't be a pointless
"kills-sentry" stat floating in the save file (and it will be removed
after a theme conversion, just like kills for nonexistent races).
Refactor rank code to be less redundant

RANKS is now just a tuple and RANK_XP is now calculated (just like
RANK_PROMOTE). Redundant rank_list was removed; now much easier to
add/remove ranks, if you wish.
Change text_entry cancel behavior

Instead of calling the callback with the starting text value, call it
with no arguments and let the callback handle the cancel action.
Make save filename match loaded filename

If one was loaded at all, of course.
Updating readme.txt to reflect today's changes

I suppose this qualifies for a version bump to v0.7.2.3.