docs: def extract_view(view, decorators=None):
      """
      Extract a view object out of any wrapping decorators.
      """
      # http://stackoverflow.com/questions/9222129/python-inspect-getmembers-does-not-return-the-actual-function-when-used-with-dec
      if decorators is None:
          decorators = []
      if getattr(view, 'func_closure', None) is not None:
          decorators.append(view)
          for closure in view.func_closure:
              if callable(closure.cell_contents):
                  return extract_view(closure.cell_contents, decorators)
      if inspect.isfunction(view) or inspect.ismethod(view):
          pass
      elif inspect.isclass(view):
          pass
      else:
          view = view.__class__
      return view, decorators