Research Safety

Research build paths are now type safe, ensuring the object type that is to be constructed always exists.
Corrects two non-existing types, changes from ````/obj/item/mecha_parts/mecha_equipment/phoron_generator```` and ````/obj/item/weapon/cartridge/science```` to ```` /obj/item/mecha_parts/mecha_equipment/generator```` and ````/obj/item/weapon/cartridge/signal/science```` respectively.