Could these be done in ```self._create_cf_variable``` ideally in a single step? More importantly,  I'm not convinced having a namedtuple with two lists that you append to in step (if all goes according to plan and code elsewhere doesn't append one and not the other) is ideal. It would seem better to have a single list (or other container) of namedtuples i.e.
```[(cf_name_0, coord_0), (cf_name_1, coord_1, ...]```. Even better hide this away in a class and simply expose an add(cf_name, coord) method plus ```.coords()``` and ```.names()``` methods or properties that return tuples (e.g. ```tuple(pair.name for pair in names_and_coords)```) .