better to use plumbing than porcelain for this, e.g. `git rev-parse HEAD`

if we really want a branch there is `git name-rev --name-only HEAD`, but that could return something like `master~1` if not currently on a branch. do we maybe want to allow any `ref` here? 

might be worth getting a readable name to tag the instance with, but that's for later