Updated the PHP Markdown library used by easybook

Instead of the dflydev/dflydev-markdown package, easybook now uses
the original michelf/php-markdown library.

In addition to being the original PHP Markdown library, this new
package is actively maintained and improved. This new package
has also fixed some edge cases in the Markdown unit tests.
Remove a useless new line in the code.twig templates
Improved the way books can include code listings.

easybook now supports three different code block types:

1) easybook: this is the type used by default

  [php]
  $lorem = 'ipsum';
  // ...

2) fenced: this is the type used by PHP Markdown library

~~~ .php
$lorem = 'ipsum';
// ...
~~~

3) github: this is the type used in the GitHub site

```php
$lorem = 'ipsum';
// ...
```

You can use any code block type, but a given book can only use one
type. The default type (`easybook`) maintains backward compatibility
and it's easy to use. The problem is that the code must be indented
and therefore, there cannot be empty lines without leading tabs or
spaces. This is a *HUGE* problem with editors that remove tabs and
whitespaces in empty lines.

This code will be wrongly parsed:

  [php]
  $lorem = 'ipsum';

  $another_lipsum = 'ipsum';
  // ...

The same code, without empty lines, works perfectly:

  [php]
  $lorem = 'ipsum';
  $another_lipsum = 'ipsum';
  // ...

The other two code block types work perfectly whatever the code you write.
As this is a global `easybook` configuration parameter, if you use fenced
or github code blocks, you must configure it in the book's `config.yml`.
Copy and paste the following configuration as an example:

easybook:
    parameters:
        parser.options:
            code_block_type: fenced
            # alternatively, you can also use:
            # code_block_type: github

book:
    title:  ...
    # ...

You can also check out the `doc/easybook-doc-en/config.yml` file and the
`doc/easybook-doc-en/Contents/*` files for an example of how to use
fenced code blocks.
Fixed the current tests for the previous commit
Added unit tests for the new code block type feature
Updated the official documentation to use the new fenced code blocks