Factory function compiles
Move algo 1 code
Move algo 2
Rename
Algo 2 compiles
Rename
Clean up
Slimming down module impl
Add impls