Work when in subdirectory of a git repo

When starting, after fatal conditions check, change current directory to
either some parent that is a valid git repo, or the fs root. Why the fs
root? It just doesn't make sense to add the code to change *back* to the
starting point since it's going to be a fatal error anyway and we're
going to exit.
Ensure tests for failing outside a repo fail

Can't run these tests in the lolcommits repo itself, because we need
them to fail. Therefore add an annotation that allows them to be run in
a temporary directory.
Add scenarios that test for working in subdirs

Verify that the last and browse commands work in subdirs too.
Merge pull request #186 from ilkka/work-in-subdirectory

Work when in subdirectory of a git repo