code: public static <E, C extends Collection<E>> SynchronizedMutableCollection<E> of(C collection)
      {
          return new SynchronizedMutableCollection<E>(CollectionAdapter.adapt(collection));
      }
docs: This method will take a MutableCollection and wrap it directly in a SynchronizedMutableCollection.  It will
  take any other non-GS-collection and first adapt it will a CollectionAdapter, and then return a
  SynchronizedMutableCollection that wraps the adapter.