There are a few ports of Robert Penner's easing functions in crates.io. This one is different
in that all functions take a t ∈ [0, 1] and return a value in the interval [0, 1].
Derived from https://github.com/warrenm/AHEasing/blob/master/AHEasing/easing.c