Rashi: David killed "Kol Zachar be'Edom"; they killed the remnant [from the females]. Radak - Amalek is from Edom; Sha'ul previously killed most of Amalek.
2)
Why does it say "Ad ha'Yom ha'Zeh"?
1.
Radak #1: Bnei Shimon dwelled there until they were exiled
1
.
2.
Radak #2: Amalek did not return to their place, even though Bnei Shimon were exiled from it.