refactoring, improve documents-list design