LP1883171 & LP1940663: Modify do_checkin for asset.copy_inventory
Modify the do_chekin method of Circulate.pm to create a new
asset::copy_inventory object when the do inventory modifier is used.
This change necessitates moving the check for a floating copy up to
where the do inventory code is run and subsequent modifications to the
transit and noop checkin code.