Let units die. Fix some magic numbers. Popup lib

FEATURE: Use Dialog.show(msg) or Dialog.show([line1, line2, line3]) to
communicate with player. Function returns immediately. Optionally
specify callback to run after player dismisses dialog as second
argument.
FEATURE: Set unit.moveSpeed to decide how far they can move.
FEATURE: Set unit.die to a function which gets called when the unit runs
out of hp. Also, units are removed from field when they run out of hp.

CODE: Map.positionBoxY(boxHeight) now decides where to position popups
for minimal overlap with area-of-interest. Should be expanded to handle
x-axis in future.

BUGFIX: Pressing B when prompted for attack target now correctly goes
back to the move phase, instead of back to unit selection.
BUGFIX: Moveable area overlay no longer (incorrectly) shows tiles
occupied by other units as movable.