Good point on the OrderedDict.  I'll make that change.

I generally try to avoid hard coding things unless it's necessary or avoiding it creates too much abstraction.  For our first iteration, I think my approach is fine since we're not really sure what we want to display yet.  However, we should revisit your approach once we know what we want.  Does that seem fair?