This assumes we only have one object instance per type, right? I think the property controller would violate that at least.