Israel has freed 90 Palestinian prisoners in return after militant group Hamas released three Israeli hostages as part of a ceasefire deal designed to end the war in Gaza.