Refactor ContactList update logic (1st step)