move controller to it own file