Improve the way the model is reloaded in the model editor when the file is updated.
Rename for consistency.
Remove an unused attribute from EditorMetadataComponent.

This changes the serialized format.

This commit also adds some base code for linking scene nodes to prefab in the scene editor.
Serialize the prefab info of EditorMetadataComponent.

Obviously, this changes the format of the serialized data, so scenes will fail to load after this commit.
Add a helper method to EditorMetadataComponent for checking if it is linked to a prefab.
Add initial implementation of mapping scene nodes to prefab in the scene editor.

This does not yet update linked scene nodes when the prefab is modified.
Fix a bug where the image editor was not deleting it's viewport GUI element.
Improve correctness.
Force a data files watcher update when a prefab is updated.
Re-enable saving of the EditorMetadata component in prefabs.

It turns out that this is in fact needed so that things like the sprite and direction arrows remain consistent. After enabling, there is an issue where nodes are potentially marked as selected after instantiation, so we do a deselection pass.
Change the format of prefabs.

This is the first of a few changes. The idea is that persistent IDs will be used so that tools can more effectively link to and update the hierarchy of prefabs.
Add an explicit relative path attribute to the data files watcher items.
Add the ability to prevent a scene node's ID from being changed when deserializing.
Add first very rough implementation of prefabs.

Still a lot of work to do here.
Fix an issue where the scripting environment was being notified of selection changes when adding a scene node.

This is a left over from previous work and is no longer needed.
Fix a bug where scene nodes linked to prefabs would be incorrectly marked as selected when the prefab is updated.