WIP: Start refactoring text support.