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>
@jsquyres : I checked in an additional check (e5b779f).

I check for the presence of fi_direct.h in the provider's tree. I think this check should satisfy both of your comments (presence of requested provider and whether that provider supports direct).

I didn't think testing for -all- required headers would be needed since the required files are known (basically the corresponding *_direct.h files). So, if a provider is upstream, then all files should be there ... unless the maintainer goofs up :)

Additionally, if some header file is indeed missing, make should error out since top-level Makefile.am lists all required header files.