code: function(data, options, add_to_container) {
  		// DOM ELEMENTS
  		this._el = {
  			parent: {},
  			container: {},
  			message_container: {},
  			loading_icon: {},
  			message: {}
  		};
  	
  		//Options
  		this.options = {
  			width: 					600,
  			height: 				600,
  			message_class: 			"tl-message",
  			message_icon_class: 	"tl-loading-icon"
  		};
  		
  		this._add_to_container = add_to_container || {}; // save ref
  		
  		// Merge Data and Options
  		TL.Util.mergeData(this.data, data);
  		TL.Util.mergeData(this.options, options);
  		
  		this._el.container = TL.Dom.create("div", this.options.message_class);
  		
  		if (add_to_container) {
  			add_to_container.appendChild(this._el.container);
  			this._el.parent = add_to_container;
  		}
  		
  		// Animation
  		this.animator = {};
  				
  		this._initLayout();
  		this._initEvents();
  	}
docs: /*	Constructor
  ==================================================