Alter new socket accept loop to be non-blocking

Previously, the daemon was architected to handle only a single client
session at a time. For the duration of that socket connection, the
daemon was blocked from accepting new sockets. If that one socket
became hung for whatever reason (e.g., the client vanishing silently
without properly closing its connection to the svmp-server, resulting
in the svmp-server -> svmpd connection never closing) the VM's user
would never be able to reconnect until either the VM or the svmp-server
was restarted.

This patch changes the socket handling to be non-blocking, but still
only allows a single active session at a time. If a new connection is
received while an existing one is active, the existing session is
terminated, freeing up the daemon to handle the new connection.

Change-Id: I55da7b2322f6db7723b4a87b0d237ff2dc73a8a5