Use checked-out branch as default branch.

Previously assumed 'master' was the default branch, when master may not
exist at all.
Attempt to fix test for repo without master branch.

Without a working test environment, it's hard to be confident it will
succeed, but it's certainly a step closer to correct.
Fix tests (and this time I tested it).

Admittedly, I tested it by modifying composer.json to include phpunit
but then did not commit that change, so it's vaguely possible an older
phpunit would find a way to fail.

I think we should be good, though.
fix url generation - now a test to nested repositories (testInitialPage test) is passing on windows os.
fix html source code view
fix bugs on commit page - when get diff logs of a commit that is decendent of a merge or when a commit is the initial commit and fix a logical error on readDiffLogs method
improve get blame method retrieving long revisions to avoid ambiguity and omitting the caret of revisions (boundary commits)
Merge pull request #238 from marcoscoelho/path-to-fix-url

fix url generation ...
Merge pull request #239 from marcoscoelho/path-to-fix-html

fix html source code view
Merge pull request #240 from marcoscoelho/path-to-fix-blame

improve get blame method retrieving long revisions to avoid ambiguity...
Fixing conflict
Solving conflicts