Make input in tests all be UTF-8

wcfg always reads UTF-8 and writes back UTF-8, so the test suite has to take
care of always feeding UTF-8 to the parser.
Clearly state that Python 2.6 and 3.2 are supported

* Use the proper PyPI classifier for Python 2.6
* State the fact in the README.
Do not shadow the global "string" inside functions

This removes a pylint warning.
Fix parsing of hex and octal integer numbers

The code for detecting hex/octal was correct, but the "is_hex" and
"is_octal" flags were not set properly. Also, added some additional
asertions in the code to check for mutually exclusive options (e.g.
a floating point number cannot be hex, and so on).
Fix hex number constant in tests
Test case for valid strings parsing
Fix parsing of optional sign in float number exponents

Signs were not being accepted as valid input in the exponents of
floating point numbers. This commit fixes that, and also adds a test
case that covers parsing of floating point numbers.
Indent output properly when dumping values

This fixes the indentation logic when dumping values, which was producing
misinx results with way too much indentation in some cases. Also, it adds
unit tests for the "wcfg.dumps()" API and checks for proper indentation of
the output.
Fix encoding of numeric values when dumping

Properly encode numeric values to UTF-8/ASCII when writing them to the
output stream. This also addds unit test for "wcfg._dump_value()".
Make sure byte string values can be dumped
Add boolean parser
Some fixes

- Octal and Hex are now recognized
- List do not blame whitespaces