Abstracting controller partially complete for ProgramsController