Former rebel Gustavo Petro narrowly defeated a real estate tycoon in a runoff election that underscored people’s disgust with Colombia’s traditional politicians.