Peter Sagan wins Stage 7 of Tour of California