updated todo; more docstrings