Update: incorporate CS fixes (h/t @stof)
Update: feedback from @stof and @beberlei

 * move supportedDriverOptions into setDriverOptions
 * make setDriverOptions private
 * support \MYSQLI_SERVER_PUBLIC_KEY on 5.5.0+
Update: remove static (method is private anyway and will be called once)
Enhancement: restructured code - to loop 'earlier'

 * push error handling down to when it occurs
 * WIP, as I am unable to trigger false currently
Enhancement: small test case

 * test case to assert the connection timeout is set
 * test case to assert on exceptions thrown
   * wip, as it seems impossible to trigger 'false' from mysqli_options