Hamas and Israel trade fire over Gaza