ibacm: Remove beginthread abstraction

Use native pthread calls.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
ibssa: Create common calls to open devices/ports

Generalize ibacm code to open all devices/ports.  The
SSA common code will open/close all devices.  To support
the different user's of the common code, the size of the
device and port structures that are allocated are specified
by the caller.

The intent is that ssa_device and ssa_port will be embedded
inside user specific structures

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
ibssa: Use API to control log level rather than extern

Remove the extern log_level variable and instead use
the ssa_set_log_level() call to control the logging
level.

Export an API to write common SSA configuration options
to the log file.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
ibacm: Add ibssa control thread

This purpose of this thread is to allow development of
a common SSA infrastructure to proceed without disabling
the rest of the ACM framework.  It will duplicate
functionality from other ACM threads, until it replaces
them.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>