With R16B changes related to locking within the area of port drivers seemed
to result in the syslog driver hanging on the driver_create_port call. To
avoid this, move port creation and closing from C into Erlang. Rework the
driver control interface to simplify the open call to just the setting of
the logopt and facility on a new port. Remove the opening and closing of a
port in the gen_server init and terminate as that port is no longer needed
to communicate with the driver. Move the open call out of the gen_server
and do it in the caller's process instead.