emulator: Copy callback mechanism from atutil.h

atutil.h needs GAtChat and GAtResult definitions, and we do not have
these definitions inside emulator.c.
include: Add ofono_emulator_set_removed_cb()
emulator: Add removed notification mechanism
emulator: Change feature check to attend HFP 1.6

In HFP 1.6 there is a new feature: Codec Negotiation.
hfp_ag_bluez5: Create a hash to store emulators
hfp_ag_bluez5: Store emulator when connect
hfp_ag_bluez5: Remove emulator when disconnect
include: Add ofono_emulator_create_card()
emulator: Add Handsfree Audio Card to emulator
emulator: Register card when establish SLC
hfp_ag_bluez5: Create card for emulator when connect
emulator: Set local and remote address of card
hfp_ag_bluez5: Pass fd to card creation

We can extract local and remote address from the file descriptor.
emulator: Add init and cleanup functions
main: Call emulator init and cleanup functions
phonesim: Include hfp.h
hfp_ag_bluez5: Include hfp.h
hfp: Move HFP versions definitions to hfp.h

hfp.h should store all HFP related definitions.
emulator: Add a Card driver for HFP 1.6

This is just the skeleton of a Handsfree Audio Card for the AG side of
HFP 1.6.
emulator: Set card version