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.
hfp_ag_bluez5: Remove unused includes
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
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 driver

If the version is 1.6, passes the corresponding card driver name. If
not, passes NULL.
hfp_ag_bluez5: Pass HFP version to card creation

Extracts the version from the fd_properties dictionary, if present.
Fallback to HFP version 1.5 if not present.

After that, passes it to the card creation.
hfp_ag_bluez5: Register HFP AG version 1.6
emulator: Add Codec Negotiation feature

This commit adds Codec Negotiation to the emulator's list of features.
emulator: Add AT+BAC support

When the emulator receives a AT+BAC SET command, it stores the
available HF codecs.
emulator: Keep information about AT+BAC calls

The AG must only init the codec negociation procedure if the HF has
already sent an AT+BAC command in the current Service Level Connection.
emulator: Respond to AT+BCC command

This commit verifies the conditions where the AT+BCC command will fail.

The codec connection setup is missing.