remove subclasses of OpCompiler, refactor specs to use OpCompiler directly