[TASK] Rename BreakpointDataSet to DataSample

The new name much better fits the actual purpose of the class.
[TASK] Rename StaticAnalysis\Breakpoint to Probe
[BUGFIX] Analysis output file cannot be specified
[FEATURE] Use injected coverage data object in test run
[FEATURE] Allow single root node for syntax tree iterator
[FEATURE] Fetch values by evaluation

This allows for fetching values of arbitrary expressions by using the
"eval" command of DBGp.
[TASK] Make PHPUnit arguments an explicit option
[TASK] Change value fetcher precedence

The evaluate fetcher can be used for any expression, so we use it as
a fallback if the property fetcher cannot be used.
[BUGFIX] Debugger client loop not exited after tests
[FEATURE] Store collected coverage data

Currently, the object is simply serialized. Later on, we should move
this to an XML/JSON based format.
[TEST] Acceptance test for single condition decisions

The test is currently not that valuable for protection against
regressions (though it already tests quite a bit of the functionality),
but it is rather meant as a quick means to test the complete process
from static analysis to coverage calculation.

To run the test, execute
`phpunit -c Build/PhpUnit/FunctionalTests.xml Tests/Acceptance/Coverage`
from the main directory.
[FEATURE] Attach probe to syntax tree node
[CLEANUP] Remove unused truth table class
[BUGFIX] Session constructor should not be called in unit tests
[FEATURE] Get values from data sample
[CLEANUP] Factor out test running from event subscriber
Merge branch 'separate-test-runner'
[FEATURE] Analysis data mapper

The data mapper pattern brings storing/loading data to a central place,
freeing the rest of the code from this unnecessary clutter.
[CLEANUP] Make test run command more readable
[TASK] Add dependency from collected data to analysis result