More sensible refactoring and re-organization.  more to come