Remove prepareToSimpleStmt

It doesn't appear to be serving any purpose, so remove it.
Cache time.Location for Performance

Previously a new time.FixedZone was created for every single time
fetched from the database. This is an immutable structure that is
somewhat expensive to create and so should be cached. Benchmarks
indicate slightly under a 20% speed improvement with a reduction in
allocs from 5 to 2 and a reduction in memory allocated from 213 bytes to
66.
Add Benjamin Heatwole to the list of contributors
Tolerate CommandComplete messages before the data in Simple Query

Commit 1e2ccf84caca692327146254602c580cbf inadvertently broke the case
where one or more CommandComplete messages were received before an
actual result set, as reported in #282 by rylanhalteman.  Revert to the
old behaviour of tolerating any number of CommandComplete messages
before the actual data is received.
Skip test case for issue 282 on Go 1.0

It unfortunately doesn't know about the Queryer interface :-(
Handle EmptyQueryResponses correctly

Like hochhaus noted in #284, we previously didn't handle
EmptyQueryResponses from the server correctly.  Fix by treating them as
a 0-row, 0-column result set.
Fix incorrect parsing of negative time zones
Fix formatting verbs in test error message
Correctly encode time zones with seconds

The previously used RFC3339Nano format to encode times does not take
seconds into account for time zones. This commit fixes that by appending
the time zone seconds to the formatted time, but only if it's non-zero.

Fixes #286
Add Joël Stemmer to the list of contributors
Merge remote-tracking branch 'upstream'