purple: don't ignore status change when idle-away

commit 74820ce888af76c76c89e05d229aece0de33f443 added a check to ignore
state changes when the current libpurple state is idle or away. It is
not clear why this check was added. Simply remove it.

This should fix the long-standing issue that Pidgin status was not
returning to available after a meeting ended.
srtp: parse encryption key from SDP
srtp: generate encryption key for each stream
srtp: offer encryption key when initiating a call
srtp: implement sipe_backend_media_set_encryption_keys()
notify: store ucPC2PCAVEncryption value form server
srtp: add sipe_backend_media_get_encryption_policy()
media: send encryption SDP attribute based on policy
media: add stream_decryption_keys list to sipe_media_private
media: refactor encryption compatibility check
srtp: negotiate encryption and apply keys to backend
srtp: encryption policies WIP
media: mux RTP and RTCP when using TCP connection

Lync uses a single TCP connection for both components.
media: duplicate TCP candidates
filetransfer: use 'init' callback in sipe_file_transfer

Replaces sipe_core_ft_incoming_init() and sipe_core_ft_outgoing_init()
and the specific callback method is now set by Sipe core depending on
whether incoming or outgoing file transfer is being handled.

Will allow for some code to be shared between legacy OCS file transfer
implementation and the new Lync approach.
filetransfer: use 'cancelled' callback in sipe_file_transfer

Replaces sipe_core_ft_cancel().
filetransfer: use 'deallocate' callback in sipe_file_transfer

Replaces sipe_core_ft_deallocate().
filetransfer: use 'start' callback in sipe_file_transfer

Replaces sipe_core_tftp_incoming_start() and
sipe_core_tftp_outgoing_start().
filetransfer: use 'end' callback in sipe_file_transfer

Replaces sipe_core_tftp_incoming_stop() and
sipe_core_tftp_outgoing_stop().
filetransfer: use 'read' callback in sipe_file_transfer

Replaces sipe_core_tftp_read().