code: protected Item<T> newItem(final String id, final int index, final IModel<T> model)
  	{
  		return new Item<T>(id, index, model);
  	}
docs: Factory method for creating a new {@link Item}. This method is invoked in the constructor
  from the derived classes and can be overridden so users can provide their own version of the
  new {@link Item}.
  
  @param id
  the id
  @param index
  the index
  @param model
  the model
  @return the new {@link Item}.