Await a established connection to ensure the received errors match exactly.

This test failed on Windows x64.
Recalculate the timeout of conn#wait_for_notify and conn#block in
case of socket events that require re-runs of select().

This previously caused a timeout higher than the given value,
because the timeout was set to the original value for every re-run.
Use nil as PG::Error#result in case of a NULL-result from libpq.

This previously returned a PG::Result object with internal NULL
pointer, that caused a misleading error "result has been cleared",
when accessed.

This fixes issue 166 : https://bitbucket.org/ged/ruby-pg/issue/166
Update History.txt
Test requires newer PostgreSQL version.
Travis: Allow failures on rbx.
Bump the version, update history.
Added signature for changeset 4e0606f5f5aa
Added tag v0.16.0 for changeset def8f41a7672
Add Lars Kanis to the list of developers in the gemspec.
Add usage examples for put_copy_data and get_copy_data.
Add Gemfile for compat with rake-compiler-dev-box.

Increase version of rake-compiler to 0.9. That is needed for the
x64-mingw32 build.
Use RbConfig::CONFIG['CC'] instead of ['host'] for determining cross
compilation platform.

This is 'i586-mingw32msvc-gcc' versus 'i586-pc-mingw32msvc'.