Refactor the list controller with datasource and delegate method
Refacor detail controller and select controller