Do you think this, and some of the other functions like `distribute_indicices` might fit better in `construct.py`?