Fixed Task-7.11b bug and refactored Task-2.8

The entities were not being initialized with health values so
all of them were being deleted when the segment was loaded
(health < 1). To fix, I extended the .json entity specification
to include current and maximum health values. Constructing the
Entity automatically sets the health values.

The _load_new_segment was refactored to remove the PhysicalState
creation and to eliminate lots of duplicate code.
Merge pull request #49 from NintenJoe/Task-2.8-Refactor

Task 2.8 refactor and health bug fix.