San Francisco anti-G8 rally turns violent