Invert UTC offset sign if the object was created with a specific offset

Fixes #801.

When a Date object is created with 7 arguments, where the 7th argument
is the UTC offset, we need to invert the sign for the display since
Java's offset is the opposite of Ruby's.
Spec for #801
Time#zone should return nil if Time is created with 7-arg form of #new
Fix #801 spec, and add #zone spec.