fabric: Add fi_addr_t datatype for mapped addresses

Introduce a new datatype for addresses that have been mapped
by an AV.  fi_addr_t is a 64-bit address, which is returned by
an AV insert or map call.  Update all unconnected data transfer
calls to accept this address type as input.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
man: Update man pages to reflect changes to fi_addr_t

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Modify EQ readfrom to return fi_addr_t

Update EQ completions to return source addressing data in
the form of fi_addr_t.  This allows the source address to be
used in a response.

To support this change, define that connectionless EPs must
be bound to an AV.  Also allow the app to specify is source
addressing data is required, or if the provider can indicate
if it exists.

The EQ readfrom call is no longer listed as optional, however,
whether source data is available is now endpoint dependent.  When
an event is read from an EQ and no source data is available, the
EQ will return FI_ADDR_UNSPEC.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
fabric: Merge fi_info addr format fields

Now that we have fi_addr_t defined for data transfers and event
completions, we can eliminate the addr_format field from fi_info.
"Rename" info_addr_format to just addr_format.  And allow a single
address format to be used for all calls which specify an address:
connect, join, getname, getpeer, AV insert, etc.

We still support opaque protocol specific address formats for
applications that communicate addressing data out of band.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Merge pull request #78 from shefty/master

Enhances type checking for data transfer calls by adding fi_addr_t