Adds a copy() method for returning a copy of the Delorean object with a new timezone

shift() currently mutates the original Delorean object, so this is just a simple way to get a copy of the current object with an optional new timezone.