Reorganize ClientConnection into multiple files