whole_func_string: function(property, callback) {
  		if(typeof property !=  "string") {
  			callback = property;
  			property = "__all__";
  		}
  		
  		// empty, don't remove anything
  		if(!this._subscribers[property]) return;
  		
  		// remove everything
  		if(callback == null) this._subscribers[property] = [];
  		
  		// find callback and remove it
  		var ind = this._subscribers[property].indexOf(callback);
  		if(ind >= 0) this._subscribers[property].splice(ind, 1);
  	}
func_code_string: function(property, callback) {
  		if(typeof property !=  "string") {
  			callback = property;
  			property = "__all__";
  		}
  		
  		// empty, don't remove anything
  		if(!this._subscribers[property]) return;
  		
  		// remove everything
  		if(callback == null) this._subscribers[property] = [];
  		
  		// find callback and remove it
  		var ind = this._subscribers[property].indexOf(callback);
  		if(ind >= 0) this._subscribers[property].splice(ind, 1);
  	}
func_documentation_string: Unsubscribe for changes of a property or the whole object