Allow duration strings to be used for intervals

This change allows people to specify string durations for `Eventually` and `Consistently`. For example:

``` go
It("should abort a consistently", func() {
	t := time.Now()
	Consistently(buffer, "2s").ShouldNot(Say("def"))
	Expect(time.Since(t)).Should(BeNumerically("<", 500*time.Millisecond))
})
```