Store weapon in pickup entity as classname, ideally weapon entities should always be owned by a player
Destroy dropped weapon now that it doesn't exist inside the pickup entity. Spawn pickup entity at the end of drop to avoid picking it up while still in inventory.
Add a trigger delay to pickups so that dropping on self doesn't trigger a pickup straight away