Tracking a single remote branch as a local branch is straightforward enough.
$ git checkout --track -b ${branch_name} origin/${branch_name}
for i in `git branch -a | grep remote`; do git branch --track ${i#remotes/origin/} $i; done