randomSeed(analogRead(0));
...is unreliable. Here's why...
These are much better choices...
http://arduino.cc/forum/index.php/topic,108380.0.html