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.20-RC1, with and without threading.