Fix the NSRunloopScheduler to just run the action if it can

If you are already on the main thread, no reason to proxy to it again, just run the action.