Django is there only to implement the views. You can just as easily use Flask or Pyramid or other framework, but if you want to give a complete example (or indeed, to implement OAuth), you do need to use something (even if that's BaseHTTPServer, if that rocks your boat).
Edited to add: Django-only guide would be: "use django-allouth. done."
Django is used as a lowest common denominator and guide is not using complex Django features. The only exception could be the singleton model example, but advanced users are probably capable of creating singleton models in their DB of choice. I'm open to suggestions how to create framework-agnostic examples.
I hope this won't become a pattern like it is with jquery and javascript. It's virtually impossible to find a proper answer to js-related question. Everyone tells you to use jquery. Similarly, everyone assumes you run your javascript in a browser and so have access to browser-specific objects.
GitHub and Facebook don't use refresh tokens. Token lifetime is covered and guide explicitly states in intro that it uses GitHub and Facebook services.
https://github.com/simplegeo/python-oauth2/issues/92