Added position properties and methods to interface.
Added stat-related enums instead of private vars.
Added enum for brigade vertical position.
Added methods to compute a familiar type's score.

This handles all cases except for two.  First, when a familiar type has
multiple non-standard attacks, their probabilities are not correct.
Second, non-damaging skills (like healing skills) are not properly
accounted for.
Added SkillGroup model object.
Report non-offensive skills do no damage.

Checking the skill group allows us to easily determine if the skill will
do any damage or not.
Moved skill enums into SkillViewModel.
Added Group to SkillViewModel.

Also fixed the wrong name for Group in the Skill model.
Set skill probabilities relative to num skills.
Set FamiliarType when adding related data.

Do this, in addition to setting the FamiliarTypeId, so related data can
be added when a familiar type is created (before it has an id).
Added SkillGroupId to SkillViewModel.
Treat null ignore position as not ignoring position.
Correctly set standard attack probability.

Specifically, when there are multiple non-standard attack skills.
Added properties to get PvP and raid scores.
Added method and properties to calculate scores.

A brigade's score is the sum of its familiars' scores.  If a familiar
has no PE score, its Max score is used instead.
Refresh brigade positions after changing formation.

This is done so each familiar type will get the correct brigade
formatino position value.
Removed BrigadeFormationId from BrigadeViewModel.