build: fix build for enable direct

Only one provider can be built in direct mode, so we
keep a count. Also, additional headers need to be
installed.

Signed-off-by: Sayantan Sur <sayantan.sur@intel.com>
Should also add a few more checks (users always get this stuff wrong, and then blame the library):

1. Ensure that the provider that was selected via --enable-direct actually exists in the tree.  If it doesn't, then AC_MSG_ERROR indicating that the specified provider does not exist.
1. Ensure that all the header files that are required to be installed by a DIRECT provider actually exist in the tree of the specified provider.  If they don't, then AC_MSG_ERROR indicating that the provider does not support DIRECT.