20: Create interface for algorithms 
work in progress
Task-Url: http://github.com/bejnan/MTFMag/issues/issue/20