Matrix interpolation

> interpolation.js should be restricted to ints/bools/arrays (it mirrors InterpolableValue). Instead of passing {t: 'foo', d: } records into the interpolate function, ensure at the caller that the t's match, then transformList.map(function(o) { return o.d }). You'll also need to reconstitute back into a transform list at the caller.

OK this is done. I didn't check that the t's match because they should always match at this point. I can put an assert in for that if you want.