If people supply both `path_list` and `text_base_path` then unexpected behavior will occur.  Seems like a check should be put in like:

```python
assert (text_base_path is None) or (path_list is None)
```