Never return negative from GetPhaseDuration().

Sometimes the timestamp of the first frame is before the timestamp
recorded for the phase start, by a few ms.  Make sure we return zero in
this case.

This fixes the MessageScene fade-in/out.
Reduce the fade in/out time to 200ms.