(a) No person, firm, association, partnership or corporation shall operate a driver training school or engage in the business of giving instruction for hire or for a fee in (1) the driving of motor vehicles; or (2) the preparation of an applicant for examination given by the Secretary of State for a drivers license or permit, unless a license therefor has been issued by the Secretary. No public schools or educational institutions shall contract with entities engaged in the business of giving instruction for hire or for a fee in the driving of motor vehicles for the preparation of an applicant for examination given by the Secretary of State for a driver's license or permit, unless a license therefor has been issued by the Secretary. This subsection (a) shall not apply to (i) public schools or to educational institutions in which driving instruction is part of the curriculum, (ii) employers giving instruction to their employees, (iii) schools that teach enhanced driving skills to licensed drivers as set forth in Article X of Chapter 6 of this Code, or (iv) driver rehabilitation specialists or programs in which the clients of the rehabilitation specialists or programs have previously held driver's licenses.