Refactor to support pluggable interpreters.