Hi,
Hmmm... I must admit that I did read your text a few times and all the times I read it I lost track before reaching the end :-)
To tell you what I do know about your questions though, then customized cells within DataGridView are not yet possible but there is an open issue here that requests it's implementation.
About being able to select from a List of KeyValuePair(s) then that is easy for a combobox. I think I even posted a sample for exactly that just a few days ago.
You might consider using a Doubleclick on a textboxcolumn in your datagridview to fire up the form... might work in some situations.
For databinding, it might be a good idea for you to look at one of our codesamples for datagridviews which you can find here.
Hope this helps,
Palli