Vector rules fns

Submitting  for comment : **not for merge yet**

Some tasks remain :

Need to ensure these changes don't impact load speeds adversely.

The main test for this "test__convert_vector_time_coords.py" is pretty messy.
The mechanics are largely tested by the separate tests for the support routines, but the main routine needs "something":  I can't quite get my head around testing "only" the relevant parts of it's behaviour, separate from the "generic vectorised function".

Latest routines '_collapse_degenerate_points_and_bounds' and '_reduced_points_and_bounds' ideally want independent tests.

We still need to add at least the vector height code before we can really take advantage of this.
At first glance, I don't see any special extra complication with that, so hopefully it is a straightforward development from what we have here.
Hmm, I'll look into it.