acu85369 - using Timeout::Error instead of Net::ReadTimeout. Added more specs.

using Timeout::Error instead of Net::ReadTimeout
because Net::ReadTimeout is available yet in ruby 
1.9.2's stdlib.

starting the fiber idx counter at 1 instead of 0.