Refactor #3

Yet another attempt at the refactor.  Still don’t have text error
working.