Use ObjectIdDict by default, and allow specifying custom Dict types