Issue #135: added AlgorithmInput structure, extended Algorithm interface