Main: Separate loggers for lexer and parser.

The splitting is not complete, since the typeTable reuses the parser's
logger; I see no point in fixing it, since the typeTable will
eventually be decoupled from the parser.

The joint logger is also retained the case where Parser.__init__ creates
a lexer on the fly, so that the user of the parser may be notified of
lexing errors.
Main: Explicitly test for lexing and parsing success.
Main: Align help messages better. Use consistent quotes.
Type.Table: Create own logger if one is not provided.
Error: DRY default inputfile.
Type test: Verify exceptions are part of public API.
Type test: Test initialization of Table and Validator.
Type test: Turn _is_array into staticmethod.
Type test: Separate tests in classes.
Type test: Verify loggers are public members.
Merge pull request #63 from Renelvon/split_loggers

Separate loggers for each module. Make logger initialization consistent. Beautify main module. Add API tests of type module.