Cross-browser navigation logic for reflowable view

Reflowable view now uses Rectangle-based methods of CfiNavigationLogic to handle different rendering engines (WebKit, Blink, Gecko, Trident) in uniform way.
Rectangle-based methods of CfiNavigationLogic are used for 
1) Retrieving of all currently visible elements
2) Find first visible element
3) Checking visibility of element
4) Calculating of page index of given element

TODO:
- Custom CFI extension introduced in CfiNavigationLogic and related to percentage of visibility should be reviewed for robustness of positioning. This is actual especially for different viewports.
- Rectangle-based methods of CfiNavigationLogic should be adjusted to support right-to-left books.