Cavity implant disk fix, escape objectives fixes

Adds GetTypeInAllContents, which should be self-explanatory. It recursively checks for a typepath locating in an atom.
It's used by cavity implants to make sure you can't slip the nuke disk in.

Objective items in a cheesewheel in a book in your backpack will now be located properly by the game.

Removes /obj/item/weapon/gift from the code, as it was completely unused.

Also removes the smallDelivery loop in /mob/proc/get_contents(). It's amazing that proc worked at all, it really does do what it's described as doing. I'm leaving it for now, as the game seems to have gotten on well enough so far, and it'll probably just increase processing for no gain if I fix it.

And finally, unrelated but I thought I'd throw it in (sorry); standardisation of names in supplyshuttle.dm