Research Safety

Research build paths are now type safe. ensuring the object type that is to be constructed always exists.
Merge pull request #7017 from PsiOmegaDelta/SafeResearch

Research Safety