Port over branch and path finding from VLD.
Added XDEBUG_CC_BRANCH_CHECK so that we only do branch checking when requested.
Fixed a few memory leaks in branch info cleanup.
Add collected path and branch information to xdebug_get_code_coverage() output.
Fixed compiler warnings.
Refactor out the creation of the coverage file data structure.
Put line coverage under it's own header if branch/path coverage is enabled.
Rename fn to filename, it is not function name as I thought.