business plan for law firm in south africa ge8161 problem solving and python programming lab syllabus