function process(obj) {
		if (obj.c) {
			var d = Crafty.e(obj.c)
						.attr(obj.attr)
						.trigger('LoadData', obj, process);
			return d;
		}
		else if (typeof obj == 'object') {
			for (var prop in obj) {
				obj[prop] = process(obj[prop]);
			}
		}
		return obj;
	}
@
#LoadData event
@param data - An object containing all the data that been saved
@param process - The function to turn a string into an entity

Handlers for processing any data that needs more than straight assignment

Note that data stored in the .attr object is automatically added to the entity.
It does not need to be handled here

@example
~~~
Sets the innerHTML from a saved entity
Crafty.e("2D DOM").bind("LoadData", function (data, process) {
    this.element.innerHTML = data.dom;
});
~~~