Make setup.py behave nicely without setuptools

Currently, it would fail hard, whereas we can at least build the
extension (even though the testsuite will not work) when setuptools is
missing.
Enable compiler warnings

`-Wall -Werror` should make compiler warnings much more obvious,
hopefully catching more latent bugs.
Enable testing with python 3.3 and pypy as well

The pypy test is not versioned, since Debian only provides a single
pypy binary, so I don't have an environment with multiple pypy
installations.
Fix string/unicode buffer size parsing

It seems that CPython allows passing "wrong" pointers for et#
(Py_ssize_t instead of int), but PyPy has problems with this, and
wrongly casts the pointers, leading to unsigned/signed conversion
failures.

This bug was introduced in commits 433c5852 and 8aa6fd81; I'm no
longer sure why bufsize was changed from int to Py_ssize_t as well,
but passing an int value to a C function expecting an ssize_t should
be safe as the compiler should do the required conversions behind the
scenes (as long as it has correct information about the types).

Closes gh-1.
Bump version and update NEWS for the 0.5.2 release

All tests pass, let's release!