Best way to host edge and stable repo at GitHub?

What would be the best way to have edge and stable versions of a project at GitHub? Tags? Branches?

The best I can figure is for the master branch to always be stable (thanks schacon!) and have a development branch for the edge. Then, when development should be merged into master, tag that commit with a new version number.

Are there any guides or tutorials that cover this?