ENH: Add MLS method

This adds MLS calculation. Not 100% sure `waveforms` is the correct place for it, but it is a waveform, so perhaps it is.

Cython was about a factor of 10x faster than Python, so I used that.