LateInitializeName allows storage items to set their name flexibly
after normal initialization is completed, allowing it to be based on
holder, contents, location, etc.
Also hoisted storage/internal/Destroy to its rightful place.
The body zone selector now indicates which body part you are about to select when hovered over, and the hover inventory indicator basically shows where you are trying to put an item, and then shows an item ghost in red or green, giving visual feedback as to if that item will go in the slot or not.
Gifs of this in action:

Body Selection parts.

Inventory Icon Overlays!
Credit goes to @ShadowLarkens for original port to Paradise and assistance with port.
* If you mouse-drag certain items onto a hand which is already holding something, the item goes into limbo.
* The reason this happens is that the standard code handling drags is directly calling usr.u_equip, despite the comment on that proc clearly saying never to do that. So it just throws it to limbo and the next line attempting to put it in hand does nothing becuase the hand is occupied. Better way is to call unEquip, so the item will drop on the ground if it fails.
* Fixes https://github.com/VOREStation/VOREStation/issues/394
Merges the use of the is_small and mob_size into one.
Changes the species size handling to set the mob size instead of being yet another separate var to check.
Clothing no longer manipulates webbing members for better encapsulation.
Instead attackby() and attack_hand() are forwarded to accessories if
they are present.
Removed "Look in Storage" verb for less verb clutter.
/mob/proc/ClickOn() now checks storage levels, not just contents levels,
now allows items to be taken out of internal storage attached to another
item.
Coats now use internal storage for their pocket slots, removed duplicate
storage code.
Moved coat.dm out of it's special folder and into modules/clothing.