trying separating the class into functional extensions.  Don't know if I like it, but I'm trying anyway.