Improved separation of concerns a bit