[WIP] Added More Phpdoc Fixers

TODO:
* [x] Added phpdoc_seperation
* [x] Fix the behaviour with some annotations like the phpunit ones - introduced a tag class
* [x] Refactor the docblock classes to model the situation more clearly
* [x] Add tests for the `Tag` class
* [x] Add tests for the `DocBlock` class
* [x] Added phpdoc_order
* [x] Perform regression testing on league/flysystem
* [x] Based on results from testing, make improvements
* [x] Add phpdoc_var fixer
* [x] Perform regression testing on symfony/symfony
* [x] Based on results from testing, make improvements, add more test cases
* [x] Move the phpdoc_order fixer to contrib level
* [x] Add a phpdoc_trim fixer at symfony level, partly taken from phpdoc_separation
* [x] Added phpdoc_no_return_void
* [x] Review fixer orders
* [x] Perform regression testing on guzzle/guzzle
* [x] `@see`, `@link`, `@deprecated`, `@since`, `@author`, `@copyright`, and `@license` annotations should be kept together rather than forced apart by the separation fixer
* [x] Support annotations with descriptions including bank lines
* [x] Perform regression testing on doctrine/common
* [x] Perform regression testing on guzzle/guzzle and symfony/symfony again
* [x] Fix more bugs, and add more test cases
* [x] Perform regression testing on flysystem guzzle, doctrine, symfony again
* [x] Analyse current code coverage and cleanup code
* [x] Add tests for the `TagComparator`
* [x] Add missing `DocBlock` class tests
* [x] Add tests for the `Line` class
* [x] Add tests for the `Annotation` class
* [x] Test on dingo/api, factory-muffin, aws sdk v2 and v3
* [x] Discuss fixer names
* [x] Add fixers to change var to type and type to var
* [x] Add a fixer to ensure short descriptions end in a `.`, `?`, or `!`
* [ ] Add a fixer to ensure known "tags" are always lowercase
* [ ] Add a fixer to ensure `{@inheritdoc}` is entirely lowercase
* [ ] Add a integer->int and boolean->bool fixer
* [ ] Document why the fixer orders are as they are
* [ ] Request another review by @keradus
* [ ] Apply changes
* [ ] Find more php repos to test these fixers on
* [ ] Further reviews?

So...
We have a `DocBlock` class, which has `$splits` and `$lines`.

How we deal with `$splits` ?
We do 3 things with them:
- generate lines from them
- generate content base on them
- set them via `setLineContent`

What may happen when we remove that `$splits`?
- generate lines from splits on the fly in constructor
- generate content based on lines, not splits
- no need for `setLineContent`, which is used only here (in `Line::setContent`)
and...
- no need for that ugly cross reference (currently DocBlock know all lines in in, Line know in which DocBlock it is, after proposed change collection element won't need to know it's container!)

What do you think @GrahamCampbell ?