Thousands of Russian anti-government protesters have taken part in a major rally in Moscow to demand fresh elections and a new president.