add 'available' interface to the AudioBackendInfo

Even if a backend can be loaded, it does not mean it can be used.
e.g. weak-linked jack-backend (if libjack is not available)
skip non-available backends.
wrap a few more functions to complete the set.
remove superfluous calls to init_weak_jack(); with new available API