code: def deepish_copy(org):
      
      out = dict().fromkeys(org)
      for k, v in org.items():
          if isinstance(v, dict):
              out[k] = deepish_copy(v)
          else:
              try:
                  out[k] = v.copy()   # dicts, sets
              except AttributeError:
                  try:
                      out[k] = v[:]   # lists, tuples, strings, unicode
                  except TypeError:
                      out[k] = v      # ints
      return out
docs: Improved speed deep copy for dictionaries of simple python types.
  
      Thanks to Gregg Lind:
      http://writeonly.wordpress.com/2009/05/07/deepcopy-is-a-pig-for-simple-data/