framework update, filled with TODOs to fill out