major reorganizing/rewriting of section 3.
adding a big list of TODOs