[atv2] - fix the annoyance to need to click twice to startup xbmc on atv2 running ios5.x - we have a single click startup now woohoo :D
Fix CGUIWindowManager::DispatchThreadMessages() to process messages in order.
it's similar fix with https://github.com/xbmc/xbmc/pull/2167
Add method to remove specified thread message in the message queue.
Fix race conditions after starting flag reset,
make sure play state callbacks are called and only called once.