code: protected final void attach(Attachable widget) {
  		if (user != null) {
  			widget.addTo(user);
  		} else {
  			if (waitingForUser == null) waitingForUser = new LinkedList<Attachable>();
  			waitingForUser.add(widget);
  		}
  	}
docs: Used to declare that instance of widget is 'held' by this widget.
  If this widget is container it must invoke this method for all widgets it stores
  
  @param widget Widget that is stored in this widget