Introduce --parser option for a single benchmark

- Installing the parsers is optional. It is now in the `require-dev` directive.
- Checking the requirements for a driver would not throw an exception.
  It is now OK to have a missing parser class.
  Also the `checkRequirements()` method was never used until now.
- Only valid drivers (fulfilling the requirements) enter the benchmark.
- Introducing a new `--parser` option to limit the benchmark to a single parser.
  Use the name of the parser or limit it to a dialect with colon-separator like so:
      bin/markbench benchmark --parser=kzykhys/ciconia:gfm

The default behavior is left intact.

This allows the benchmarking tool to be run not only on its own, but also
as part of the CI cycle of the parsers themselves.

For example the Ciconia parser could have something like this in its Travis file:

    after_success:
      - composer require kzykhys/markbench:*
      - vendor/bin/markbench benchmark --parser=kzykhys/ciconia --profile=blank
      - vendor/bin/markbench benchmark --parser=kzykhys/ciconia --profile=default
      - vendor/bin/markbench benchmark --parser=kzykhys/ciconia --profile=github-sample