First draft, a bit long, but key ideas here.