Some toString()s.
It's possible for tlayer to be null here.

If we were given so little space that we decide to forgo the text entirely
we'll end up in here with a null layer. So we cope.
Interpolator simplification.

They all effectively operate on a single value (v) between 0 and 1. That value
can be obtained via dt/t when you're driving your interpolation via elapsed
time, and the result can be converted to start + result * range when you want
your result to be in [start, start+range]. But none of those extra bits need to
be in the interp code, obscuring the basic math.
Added a demo for the interpolators.

Useful to ensure that one doesn't botch them during a refactor. :)