De-modularize aio

Per list discussion, go back to compiling bs_aio into tgtd instead of
a separate object. libaio is a small enough dependency that it does not
merit a separate module just to keep the dependency off tgtd.

AIO support will still only be included if libaio headers are present.

Reported-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Andy Grover <agrover@redhat.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
bs_sheepdog.c: support various VDI options in --backing-store option

Current bs_sheepdog.c only supports connections to sheep process which
listen on localhost:7000 (tcp). This patch makes the address, port,
and protocol specifiable via --backing-store option of tgtadm. In
addition, snapshots of VDIs can be logical units when tag or snapshot
ID is passed to the option.

The form of --backing-store option:
 - unix:<path_of_unix_domain_socket>:<vdi>
 - unix:<path_of_unix_domain_socket>:<vdi>:<tag>
 - unix:<path_of_unix_domain_socket>:<vdi>:<snapid>
 - tcp:<host>:<port>:<vdi>
 - tcp:<host>:<port>:<vdi>:<tag>
 - tcp:<host>:<port>:<vdi>:<snapid>
 - tcp:<port>:<vdi>
 - tcp:<port>:<vdi>:<tag>
 - tcp:<port>:<vdi>:<snapid>

Example of the option: -b unix:/sheep_store/sock:tgt0:1
(connect via unix domain socket, the path of socket is
/sheep_store/sock, VDI name is tgt0, use snapshot of ID 1)

Signed-off-by: Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>