changed to recursive IIR manually because i could not get branch to merge right... sigh
Manual merge from SpringBreak branch because something, probably me, is derp.