types: Transfer HFP version definitions to types.h

When these definitions were located in slc.h and if you want to use
them, you must include gatchat.h.

Now you can only include types.h.
emulator: Set Card version
hfp_ag_bluez5: Pass version to Card creation
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.
gatserver: Add g_at_server_register_response

Certain AT commands only make sense if received in response to another
AT command, and this is especially important when sending unsolicited
commands that receives responses. But there is no mechanism on
gatserver side that allows to implement this behavior.

This commit adds a function which indicates what AT command the
gatserver is expecting. If the next command is not the desired one,
then a ERROR command is sent.
emulator: Send unsolicited +BCS

This commit sends a unsolicited +BCS command with the selected codec
when the AG receives with success an +BCC command.

Currently the codec is hardcoded to CVSD.
emulator: Receive AT+BCS response