How do I create a new GitHub repo from a branch in an existing repo?

I have master and new-project branches. And now I'd like to create a brand new repo with its master based on the new-project branch.

Background: I have one repository which contains three independent applications. It didn't start out this way. There was originally just one app in the repo. Over time, however, business needs have changed. One app became two (a legacy version and a re-write.) A web service was added. Separate branches were used to contain the three projects. However, they don't share any code. And so it'd be simpler to have them split out into their own repos.

The result is that the pre-existing site3a branch is now also moved to the new repo and will appear as rails3. This works really well: the network diagram shows the new master and rails3 with full history and in their correct relationship to each other.

Update 2013-12-07: Used this with another project, and verified that this recipe still works.

Email codedump link for How do I create a new GitHub repo from a branch in an existing repo?