more work on the code plus some doc