Support timestamp without tz, redux

This time, some more effort has been paid to testing on an older Go
version, 1.0.2, and carefully preserving the old hacks to make time
parsing work with those older versions with a less useful time.Parse.
It has also been tested on Go 1.0.3.

This just lets the Go time package use its default behavior when one
is left without time offset information.  Hope it is a behavior people
want.

The main change here is pushing down the column type into the parsing
function, as Go's time parsing can't deal with data that only has the
fractional-hour timezone offset when such a fraction exists
(e.g. "-07" for "-07:00", but "-7:30" necessarily retaining its
precision).  This old hack could not be applied unconditionally (it is
wrong when the timestamp has no time zone offset suffix), so this
information lets a correct decision be made.

Clearly, this approach also can't handle the Postgres datestyle
parameter, but that's a fight to pick some other time.

As a target of opportunity, move the 'oid' type to 'types.go', since
for now all oids I know of handled by the program are type oids.  This
causes 'go fmt' to go a little nuts and rewrite the long but boring
file.

Signed-off-by: Daniel Farina <daniel@fdr.io>