Improvements in speed and a test for soder.m.

I may do a little more polishing before submitting. Add some docs, examples, etc.