Added a createProgram function.