Wait for all resources to be loaded
Actually I'm surprised there isn't a $q.some or so to do exactly that.

I think this is a good solution for the problem, though putting it in a separate function would be nice.  (Can't think of any reasons to not do it like this either.)