steam-api: fixed messages not being sent in the correct order

Messages that are sent to a Steam friend extremely quickly (within
milliseconds of each other) do not hold their order. This issue usually
surfaces when sending messages that contain multiple lines.

The issue is resolved by using a send queue for messages, and only
sending the message after the one before it has been sent. This queue
implementation led to several other things having to be readdressed and
adapted to the new queue. Things such as the graceful handling of
expired logon sessions (24726ba).