Link with -znodelete to disallow unloading

Since libusb-0.1 did not have any init / exit function, code using the
libusb-0.1 API will not call libusb_exit.

Now, libgphoto uses libusb and will dlopen() and dlclose() it. Unfortunately
since there is no way to ensure libusb_exit() is called, when libgphoto
dlcloses the libusb.so library, the thread from libusbx.so will not be
stopped. So a thread will remain running, executing code from a memory
region that has now been freed. Crash-tastic results ensue.

I don't see a good way to fix this from libusb or libusbx, given the need to
preserve the existing API of libusb.

If, however, we link libusb.so using  -znodelete, we will prevent it from
ever being unloaded, despite the dlclose() calls. This is not ideal, but
better than allowing it to be unloaded which is a guaranteed crash.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Revert "use atexit() to call libusb_exit()"

The use of atexit() breaks various users of libusb-compat,
see ie: https://bugzilla.redhat.com/show_bug.cgi?id=1003193

This reverts commit 0be16b8dd25733d242ae32b57823a9513ec21353.

Closes libusbx/libusb-compat-0.1#2

Signed-off-by: Hans de Goede <hdegoede@redhat.com>