First draft with TODOs still in place.

Just needed to get this out there. Will fill in the TODOs with separate PRs.