Incase of errors, reopen USB connection so server plugin is in sane state

Once pushing contacts to the device is over, syncml-ds-tool sends a
OBEX_EV_LINKERR instead of DISCONNECT command. This causes the buteo
syncml stack to think that an error has occured and so reports the sync
status as failure and then closes the USB connection. The fix is to
reopen the USB connection incase of failures so that the next
successive sync session happen. Maybe a different PC tool will send the
proper OBEX Disconnect command incase of SYNC_DONE

Signed-off-by: Sateesh Kavuri <sateesh.kavuri@gmail.com>