Fix Unicode support

This series of patches fixes support for Unicode bind values, statement strings (both upgraded and downgraded), and return values, and adds a thorough battery of tests (courtesy of Nicholas Clark).

It's been tested on all PostgreSQL major versions from 8.2 to 9.4, and all Perl major versions from 5.8 to 5.18 (and several minor), with and without threading.