US House Majority Leader Eric Cantor has been defeated in Virginia's GOP primary by Dave Brat.