simple controller factory