OPDS: embryonic unit test for OPDS browser

This initial seed specifically tests against what recently broke in Gutenberg and FeedBooks.
Merge pull request #1311 from Frenzie/master

OPDS: embryonic unit test for OPDS browser
updating the screen in tap handler of readerfooter is not needed

Was a hack anyway, c.f.
https://github.com/koreader/koreader/pull/1306#discussion_r21057461

Seems to be not needed anymore. If some areas are now not refreshed
anymore, that ought to be fixed in another place.

This also gets rid of redundant screen flashes.
on finish of pan gesture when scrolling, do partial refresh

it was set to a full refresh. However, we want to behave as if in
non-scrolling mode and issue a partial refresh. That might get
updated to a full refresh if the full-refresh counter has reached
the limit - which is configurable.
fix dict window refresh

was still using old API
also, move this to another place.
allow for more control on refreshes when show()ing widgets

for now, we have show() automatically call setDirty() for the new
widget, as before. However, now show() takes two arguments for
refresh configuration that will get passed on to setDirty().

For compatibility, the default is here in show() to do a partial
refresh. So if you want no refresh triggered (via this show() call),
add a function that doesn't return anything.
dictionary window triggers refresh itself, not via show()
record ButtonDialog.dimen
refresh only dialog part of the screen for multi-word selection window
WIP: highlighting fixes