scm fixes
introduce command classes