Implement simple version of greatest/least

Only 2-arg versions for common types: double, bigint, timestamp (with tz), date

Once we support varargs we'll replace them with a generic version.