Fix delay rounding issue

Fixes issue #20. I am playing safe here and use FLT_EPSILON in case of fuzzy floats, even though I can't see how it can happen here because tools like convert round delay so the minimal step possible is 0.01.
Given this comparison code caused a bug and is not super straight-forward, could we add a comment above the `if (...)` describing the solution?

E.g.: "To support the minimum even when rounding errors occur, use an epsilon when comparing. We downcast to float because that's what we get for `delayTime` from ImageIO."

Tiny nit: could we not insert an additional line of whitespace between the definition of `kDelayTimeIntervalMinimum` and the `if (...)` statement, because they "belong together".

Thanks!