New filters: KeepEmptyLines, BreakLongLists, SpaceOpAssignments

Created three new filters:

* __BreakLongLists__ breaks argument lists and arrays into multiple lines, but only if
on a single line they would be too long.
* __KeepEmptyLines__ keeps an empty line wherever one or more empty lines are encountered in the source.
* __SpaceOpAssignments__ adds a single space before assignment operators that contain another operator like plus-equal or dot-equal.