Remove game::move_liquid and use game::handle_liquid instead

Add game::handle_all_liquid to repeatedly call handle_liquid until all the liquid has been taken care of.
Use handle_all_liquid for crafting results & unloading ammo.
This fixes #605
Merge remote-tracking branch 'BevapDin/fix-605'