Controller code organization

- Divided the main controller codes in to smaller sub controllers
- Added communication between the controllers
CDCtrl Delete code

CDCtrl Delete code