Todo done
refs.readLocalHeads now returns obj of branch:hash
Add util.difference() for sets
Clean up code a bit