more refactoring, clean up