Refactoring, some restructuring.