ensure top/bottom and left/right relations for /FitR boxes

adresses the usability problem described in
https://bugzilla.gnome.org/show_bug.cgi?id=695524
center target box for /FitR jumping

https://bugzilla.gnome.org/show_bug.cgi?id=695524
libview: Enable GDK_SMOOTH_SCROLL events for view

This enables the smooth/kinetic scrolling support found in GTK+ 3.3.18
with the document view, and handles them for the Ctrl+scroll,
Shift+scroll, and non-continuous best-fit mode scrolling cases.

https://bugzilla.gnome.org/show_bug.cgi?id=674098
libview: Allow zooming to the limits of the scale

If the current zoom level was within one zoom factor of the limit, it
was not possible to scroll towards the limit. This made smooth scrolling
near the limit awkward, as unless the scroll event had a large delta it
was impossible to reach the zoom limit. Non-smooth scrolling was also
affected, but it was just much more difficult to trigger.

Fix this by allowing zooming while the current zoom level is within one
zoom factor of the limit. Add a new ev_view_can_zoom() function to make
zooming by a factor (as with smooth scrolling) more convenient.

https://bugzilla.gnome.org/show_bug.cgi?id=674098
If the file can't be opened, show its uri