Move non-standard sorts in to algorithm object

Fixes #20