My question is the return values of resolve(), which are a view name, and args and kwargs to that view function, (and then also appname, url namespaces, etc.)
e.g. here's the output for '/courses/org/num/run/courseware':
```
   ResolverMatch(func=<function index at 0x113047ed8>, args=(), kwargs={'course_id': u'org/num/run'}, url_name='courseware', app_name='None', namespace='')
```
It seems like the thing to test for is `'course_id' in kwargs`.  But I'm not sure if basing it on the name of a kwarg is more or less permanent that actual URL patterns.  For instance, the wiki urls don't use `course_id`

        `url(r'^courses/(?:[^/]+/[^/]+/[^/]+)/wiki/', include(wiki_pattern())),`