ALLJOYN-1632 Ensure that socket is closed only once.

Change-Id: I69f4d519cb3589e2e6633a0d5e946b7ee757f82c
ALLJOYN-1728 Timer::AddAlarm in winrt must not return ER_TIMER_EXITING if timer is not running
ALLJOYN-1723 Ensure alarms are serviced on exit if expire_on_exit is true.

Check for timer->isRunning instead of controller_idx since there could be
situations where controller_idx is -1, causing alarms to not be serviced
on exit even though expire_on_exit is true.

Change-Id: I9b6e4b9ce50bbabb0b905a79675a0417b57bde4d