St. Louis progressive upsets 20-year congressman in Missouri Democratic primary