documentation and TODO update