Regarding your first point: Is GPS time defined for dates before 1980? If not it does not have leap seconds in the sense that it skips or inserts seconds at specific times. It just has a constant offset to TAI, I guess to maximise the number of leap seconds that GPS can handle in its 1 byte leap second field.