adding step-middle as interpolation method

I recently needed to use this functionality in a graph.  It does what it sounds like it should do, i.e. steps between two points on a line instead of before or after.

A test has also been added for the functionality.