Improved/fixed whitespace skipping logic

This fixes the whitespace skipping logic. Calls to Parser.skip_whitespace()
were missing in a couple of places, and calling Parser.match() repeatedly
in cases where a sequence of contiguous characters is expected was incorrect
and its use was changed to call a new Parser.match_sequence() method.
Better reporting of malformed number syntax errors

Now the message includes the character that makes the number invalid.
Add test cases for wcfg.loads()

The same set of data used for testing wcfg.dumps() is used, so we are
effectively checking that dump/load round-trips work correctly.