Bug 126839 [DataBinding] IObservable refactoring
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/viewers/UpdatableCollectionViewer.java
if (index < 0 || index > elements.size()) {
			position = elements.size();
			elements.add(element);
		} else {
			elements.add(index, element);
			position = index;
		}
		return position;
	}
	public void removeElement(int index) {
		if (!updating) {
			try {
				updating=true;
				Object element = elements.remove(index);
				viewer.remove(element);
				fireChangeEvent(ChangeEvent.REMOVE, element, null, index);
			} finally  {
				updating=false;
			}
		}
	}
	public void setElement(int index, Object element) {
		
		if (!updating) {            
			try {
				updating=true;
				Object old;
				if (elements.get(index).equals(element)) {
					viewer.update(element, null);
					old = element;