Vector pp rules for time coordinates

Replacement for @pp-mo's #1239. This builds on #1239 but reinstates the scalar version of the time pp rules. The vector version is not used (yet). I've removed some of the previous unit and tests and added others.
Speaking to @rhattersley I'm less and less convinced the call to `_collapse_degenerate_points_and_bounds` is needed or advisable (line 256). I suggest we leave it for now and carry out an investigation once the full pipeline is in place.