code: func (e *emptyList) Insert(val interface{}, pos uint) (PersistentList, error) {
  	if pos == 0 {
  		return e.Add(val), nil
  	}
  	return nil, ErrEmptyList
  }
docs: // Insert will insert the item at the given position, returning the new list or
  // an error if the position is invalid.