Fix history search to return distinct results

PR contains 5 commits that are more less bound together.

    Unit tests for declarativetabhistory
    History database fix
    Cleaning up DeclarativeHistoryModel to use only global history. DBWorker has still tab history related methods as I thought that it could be handy if we'd like to improve tab navigation further and take into account the whole back/forward navigation history. Currently we only know previous and next link statuses.
    Due to history database fix DeclarativeTabModel::currentTabId became obsolete -> moved to unit tests
    Updated DeclarativeTabModel to use new TestObject base class Might be easier to review form commits.

This doesn't completely fix duplicate history entries but is needed.

There are two possible error cases:

1) we get title changed before url has changed. In that case we're overwriting existing title with an empty title (combination with 2) ).

2) Other issue is that we need to update current link id immediately when back/forward is clicked. In this case title / url can be changed to the previous current link when engines back/navigation is used as there is a small time slot when two async operations are ongoing in parallel and now synchronization in place. Will make db back/forward navigation to sync operation and check what's the impact.

This PR makes https://github.com/sailfishos/sailfish-browser/pull/80 as obsolete.