added test repl
empty definitions are allowed
minor improvements
finished translator