Fix a few minor issues in the tile load code

I noticed these while investigating another issue.

One is a very minor performance improvement, the other is an actual logic error with promises.  See commit messages for more details.