Rename StrategySupport class to StrategySupportProfile

This renames the StrategySupport class to StrategySupportProfile.
This is a more consistent terminology, as a StrategySupport more
intuitively would refer to the strategies of a single player.
Correct parameter type in constructing input stream in gambit-simpdiv.
Implement unrestriction framework on remaining game objects.

This implements the m_unrestricted member as the Unrestrict() operations
on all game element objects.

As restriction is only implemented for strategic games at present, these
facilities are not yet exercised, but are set up for when agent
restrictions are put in place.

In addition, calling Unrestrict() on an object which is not a restriction
now raises an UndefinedException(), instead of returning a null pointer.
Merge branch 'master' into master_liap
Refactor SolveStrategic() to be one-shot.