code: function(config, widget, parent_view, template, properties) {
  
  		var name,
  			count,
  			i;
  
  		if (Lava.schema.DEBUG && !config.is_extended) Lava.t("Widget was created with partial (unextended) config");
  
  		if (Lava.schema.DEBUG) {
  			for (name in this._property_descriptors) {
  				if (!(name in this._properties)) Lava.t("All widget properties must have a default value");
  			}
  			if (config.default_events) {
  				for (i = 0, count = config.default_events.length; i < count; i++) {
  					if (!Lava.view_manager.isEventRouted(config.default_events[i])) Lava.t('Event is not routed: ' + config.default_events[i]);
  				}
  			}
  		}
  
  		this._parent_widget = widget;
  
  		this.View$init(config, this, parent_view, template, properties);
  
  		for (name in config.bindings) {
  
  			this._bindings[name] = new Lava.scope.Binding(config.bindings[name], this);
  
  		}
  
  	}
docs: Create widget instance
  @param {_cWidget} config
  @param {Lava.widget.Standard} widget
  @param {Lava.view.Abstract} parent_view
  @param {Lava.system.Template} template
  @param {Object} properties