code: public Widget insert(Widget w, int beforeIndex) {
  
          FlowPanel widgetWrapper = new FlowPanel();
          widgetWrapper.getElement().setId(Document.get().createUniqueId());
          widgetWrapper.add(w);
  
          flow.insert(w, beforeIndex);
  
          JQMContext.render(widgetWrapper.getElement().getId());
          rebase();
  
          return widgetWrapper;
      }
docs: Adds the given {@link Widget} before the given position.
  
  This is an O(n) operation because after the widget is inserted all the
  remaining cells need to have their style sheets updated to reflect
  their new position.