rewrite with improved architecture

:construction: &nbsp; *work in progress* ([rewrite branch](https://github.com/innoq/viskosity/compare/rewrite))

see 7a07c8eee1f606cb5232a8ba3508daf05a88eecb for rationale and planned architecture

* [x] implement fetcher (see below)
* [x] implement rationalizer
* [x] implement presenter
* [x] implement visualizer
* [x] implement graph store (required for interactive visualizer)
* [x] extend visualizer with interactivity extensions
* [x] turn the `VISKOSITY` namespace into a function to wrap typical initialization
* [x] ensure proper integration of all layers (AKA make it work)
* [ ] ~~document architecture (including dependencies, internal and external)~~ moved to separate issue

fetchers:

* [x] port SPARQL fetcher
* [ ] ~~port RDF/XML fetcher~~ irrelevant
* [ ] ~~port iQvoc fetcher~~ irrelevant