- Splitting a tile could accidentally overwrite a already split tile if
one (but not all) of the children were garbage collected.
- Garbage collection never actually happened.. because tile always had
empty children. To fix this a `load' flag was added so that the
children could be garbage collected as well without having to check
the data flag which may always be null.
tile->load: set when texture loading has started
tile->data: set when texture loading has finished