Removed the concept of upgrading attributes.

This has not been used so far and upgrading can still be simulated by
registering a new component with a different name (e.g. location2) and
updateing all entities in the world. If this becomes common, we can still
write a new method in the Core that will automate this.
Added component deps into IPluginInitializer, started adapting plugins
Added a new test plugin with component dependencies and a respective test
Improved debug message.

Loading didn't not necessarily fail, but may have been deferred until some
other plugin loads required dependency - either component or a plugin.
Moved out component dependendencies from the Avatar plugin
Renamed properties in IPluginInitializer
Renamed file to match class name
Separated out component deps from the plugin deps. Also fixed some deps.
Added constructors with guid in ComponentDefinition and AttributeDefinition
Implemented component definition sync in Scalability plugin. Not tested.
Corrected warnings on Linux
Restored constructor for ReadOnlyAttributeDefinition needed by Persistance