Every Plugin has been updated to correctly follow the same flow through the Scene lifecycle. Instead of listening for the Scene 'boot' event, which is only dispatched once (when the Scene is first created), they will now listen for the Scene 'start' event, which occurs every time the Scene is started. All plugins now consistently follow the same Shutdown and Destroy patterns too, meaning they tidy-up after themselves on a shutdown, not just a destroy. Overall, this change means that there should be less issues when returning to previously closed Scenes, as the plugins will restart themselves properly.
The previous patch didn't take into account that the accessors passed
in as the format array were dot-prefixed due to the previous eval-based
construction.
The only two uses of RTree that I found were in World.js:
```javascript
this.tree = new RTree(this.maxEntries, [ '.left', '.top', '.right', '.bottom' ]);
this.staticTree = new RTree(this.maxEntries, [ '.left', '.top', '.right', '.bottom' ]);
```
It's likely that this could be updated to just not pass dotted attribute
names but I wasn't super comfortable that they weren't needed in this form
elsewhere despite a quick search. I'd honestly say that it might be a better
change if we remove the dots before merge but I'll leave that up to the
discretion of the reviewers/merger.
I'm not super familiar with Phaser's style but I passed lint sooo :D
Buyer beware: the only testing I did was on the repo case I left in the
bug and I did not verify that this is still within the twitch CSP (though
it should be).