Huge crowds of counter protesters have marched peacefully through downtown Boston against a "Free Speech" rally featuring right-wing speakers, a week after Heather Heyer, an anti-racism campaigner, was killed at a Virginia white supremacist demonstration.