Exception feedback on parse error

Until now generic InvalidFileExceptions with no message where thrown
when a parse error was found in a savegame. This commit will add
more details to the exception message including the line and column
of the input file where the parse error was found.
Implement parsing from string in Python; testing EFG/NFG parser

This extends the Python API to include gambit.parse_game(), which
allows one to build a game from its string representation, not
necessarily from a file object.

This is used in a new suite of tests exercising behavior on various
parse errors when reading .efg and .nfg format files.