Add remove methods to MWWorld::ContainerStore
Call ContainerStore::remove() to remove items from inventory

Make placeObject() and dropObjectOnGround() in MWWorld to copy objects
(and indicate it clearly).

Enchanting an item now unequips it.
Add method InventoryStore::unequipSlot()

This will permit to do run a treatment when an item is unequipped.
Update weapon/magic icons when items are removed from player inventory
Edit InventoryStore::equip() to call the new unequipSlot function…

…to unequip previously equipped item.
Move some deleteObject logic from OpDelete to MWWorld::deleteObject
Remove duplicate code for PlaceAtMe/PlaceAtPC using a template
Add item count to ManualRef constructor as optional argument
Pass item count to ManualRef constructor

This remove the need to call setCount in multiple places.
Cosmetic changes

Rename ContainerStore::addImpl to addNewStack (it was confusing, since
ContainerStore had methods named 'addImp' and 'addImpl').
Edit ContainerStore::stacks for clarifications and correctness

Rename arguments and fix some potential errors (add checks).
Auto-equip items when a clothe or an armor is removed from inventory

This fix auto-equip on corpses.
InvStore::unequipSlot: return an iterator to the unequipped item
Add InventoryStore::unequipItem()
InventoryWindow: call InventoryStore::unequipItem() when an equipped item is dragged

The unequipped item is also re-stacked if needed.
Always update the source container view on drag&drop

This fix the indicator not being displayed for items auto-equipped
after an other item is removed.
Update actor model on inventory change
Add a warning comment to RefData::setCount()
Disable equipped item re-stacking when the item is removed from inventory

The item was not removed if it was re-stacked.