docs: def to_cortex(c):
      '''
      to_cortex(c) yields a Cortex object if the argument c can be coerced to one and otherwise raises
        an error.
  
      An object can be coerced to a Cortex object if:
        * it is a cortex object
        * it is a tuple (subject, h) where subject is a subject object and h is a subject hemisphere.
      '''
      if is_cortex(c): return c
      elif pimms.is_vector(c) and len(c) == 2:
          (s,h) = c
          if is_subject(s) and pimms.is_str(h):
              if h in s.hemis: return s.hemis[h]
              else: raise ValueError('to_cortex: hemi %s not found in given subject' % h)
      raise ValueError('Could not coerce argument to Cortex object')