Allow defers to run in 'main' before exit
Allow defers to run in 'main' before exit

This fixes seelog flushing messages in the case of errors that
previously caused 'os.Exit' to be called from main.
e.g. 'register' errors before this change get lost to the seelog buffer.

swipely/amazon-ecs-agent,kiranmeduri/amazon-ecs-agent,aws/amazon-ecs-agent,jaimeguzman/amazon-ecs-agent,swipely/amazon-ecs-agent,swipely/amazon-ecs-agent,kiranmeduri/amazon-ecs-agent,aws/amazon-ecs-agent,aws/amazon-ecs-agent,kiranmeduri/amazon-ecs-agent,aws/amazon-ecs-agent,kiranmeduri/amazon-ecs-agent,swipely/amazon-ecs-agent,jaimeguzman/amazon-ecs-agent