attempt to pass doc through a pager
introduce SynopsisValidator class
Rewrite SynopsisParser to support optional values for assoc parameters.

Props @jmslbam for initial implementation and tests.

see #570
ignore repeating parameters in enough_positionals()

This isn't necessarily the best approach, but it matches previous behaviour.

(see parent commit)
remove redundant array_filter() around preg_split()
Revert "remove redundant array_filter() around preg_split()"

This reverts commit e8ea7f5b62baeb860cdc329a029d2cbc854f2d5c.

It's not redundant when the synopsis has leading or trailing whitespace
or when it's an empty string.
remove 'Need even more info' section
giving credit where credit is due
don't return 'filter' object in `wp post get --format=json`

it's a transient value, not actual data
remove unnecessary temporary variable
introduce utils/convert-docs.php script
make `wp help` read intermediary format
pass string to DocParser (makes it easier to unit test)
add a few unit tests for DocParser
Support multi-line argument values (#624)
DocParser: remove decorations before processing
DocParser: return empty string instead of false
DocParser: implement get_longdesc()
replace get_extra_markdown() with get_longdesc()
add test for multiline excerpt. see #624