NOTE: All of this was originally written by Fer and Raedor for the BAS Framework. I've modified the code slightly to make it more general.
Shark Attack:
To begin with, append this to your init.sqf or init.sqs file, replacing "dude1,dude2,etc" with the names of the units for which you want bodies to be removed:
_men = [dude1,dude2,etc];
{_x addEventHandler ["killed", {_this execVM "removeBody.sqf"}]} forEach _men;
If you'd rather not touch your init file, you could just add the previous line (minus the forEach stuff) to each unit's init line:
this addEventHandler ["killed", {_this execVM "removeBody.sqf"}]
Next, add this script to your mission directory, saving it as "removeBody.sqf:"
_body = _this select 0;
sleep 180;
deleteVehicle _body;
You can change the 180 to whatever you wish the delay to be before a body is removed.