Implement FibonacciWaitStrategy

Similar to the ExponentialWaitStrategy the FibonacciWaitStrategy follows a
pattern of waiting an increasing amount of time after each failed attempt.

Instead of an exponential function it's (obiously) using a Fibonacci sequence
to calculate the wait time.

Depending on the problem at hand the FibonacciWaitStrategy might perform better
and lead to a better throughput than the ExponentialWaitStrategy.
Merge pull request #9 from joschi/fibonacci-backoff

Implement FibonacciWaitStrategy