Better way to sync on completing all actions before sleeping (using GCD groups)