Port to KF5/Qt5

TerminalDisplayAccessible is disabled for Qt5 currently since I don't
have any experience with accessible stuff and it is more complicated
than just changing a few includes

REVIEW: 111937
s/splitted/split

(cherry picked from commit 43f7d5b34b6aebd1dd4392e08eb75fa06c3bfa96)
Let's give this frameworks (Qt5/KF5) branch a different version
Various search improvements

- Do not automatically reset the search start line on search hits
    This was causing the annoying behavior that if you were to pause while typing
    in a search term, and it would actually find a hit, then you would be searching
    for the term a second time once you finish typing.

    This commit introduces two new behaviors:
    1. When you show the search bar, all searching will be done from the first
        visible line in the terminal.
    2. This start position is only reset when you
        advance to the next result, by pressing "next", "previous", or the shortcuts
        RETURN or SHIFT-RETURN

- When the view scrolls to a result, it will appear centered.
- When showing the search bar, do not invoke a search, only apply the highlight filters
- Add "search from beginning/end" button
    This will scroll to the top/bottom before searching
    Ctrl+return is also bound to this action
- Text highlighted by mouse will be set as the current search text when the incremental
    search bar is opened
- Add "Search backwards" to search bar options
    Button text is swapped according to reverse search switch

(cherry picked from commit aa42a27ef33303bf5a279ea195758323724a6fc0)
Pgup/pgdown/up/down from searchbar scrolls terminal

(cherry picked from commit 21f65230cf223de0b04fde60101411111e6b29c5)
Start to fix selection issue when part of line/word is off-screen

This is from rb 111441- however that patch is so big it is difficult
to follow.  I'm breaking it up into smaller parts.  This commit is
just for findLineStart/End and only for extending the selection.

Thanks to Yichao Yu yyc1992@gmail.com
(cherry picked from commit 8976d35cfdba1d7184d8cd3e916b540052efb444)
Implement new findLineStart/End methods

These 2 new methods are rewrites by me of the rb patch - if there are
issues, compare these two commits
(cherry picked from commit 18ed8d2fe3bc6ebdd455f9974d087d03fa234138)
Use the new findLineStart/End for triple mouse click

follow up to the 2 previous commits - for bko 319260
(cherry picked from commit aeb3e9f178ebbb8b83519ca17aaf5cf3f582b90a)
fix a crash in my re-coding of findLineStart()
(cherry picked from commit fb60833d09b1200a8dec40859d8a23fa0bff4474)
update the findLineStart/End method docs
(cherry picked from commit 9a1d7dd502897c023b90642d865f49fc7e70f76f)
very minor style issues w/ spaces
(cherry picked from commit f9e20a60421f1e09bbf35923a9a998f1c47660d2)
Separate PartTest into an automated test and a manual test

Currently the shortcut override test requires human interaction and
hence the test is not automated.  Move this test to PartManualTest so
that other parts of PartTest will run automatedly.
(cherry picked from commit 5ad1e902bae30d8770112ddd7e3914223b5bf848)
Add a 'getter' for ScrollBarPosition
(cherry picked from commit 64aaa934de50cd01d017d9d11c61f9f62fd44844)
Add testTerminal - just scrollBarPosition for now
(cherry picked from commit 0898f61d491cf391ecc805c9569ee430b6ac6b2f)
Add operators == and !=, for testing purposes
(cherry picked from commit 2c75ed5b7165a9c27b1dfaaf09dce613ee8bff8f)
Add testing of ColorTable/Entries
(cherry picked from commit f50d01180c82d461fcc50519070e78e99209eb67)
simplify the color testing
(cherry picked from commit 79cb3598d4f77c408dd515fa8be2e70bd37463d2)
add tests for terminal size
(cherry picked from commit cbce250f098228ba388e04443b701be1bce9a5f5)
Add SessionTest with some basic tests
(cherry picked from commit f0875233f3c05970ff3e2b7103d92ee3ae9db993)
Rearrange tests to be alphabetically - easier on the eyes