fix all the bad lengths; handle a bunch of todos
clear some todos