refactoring: broke out new interpret module from echo behaviour