Still refactoring. Not all is well yet.