Thousands rail against Mexico's president and ruling party in 'march for democracy'