Fix: Include only ZIP files which end with a *lower* case `.zip` suffix, but exclude files which start with a underscore `_` or a dot `.`.
Made `base_id` a proper *indexed* foreign key, and introduced corresponding relationship (had to use `foreign_keys` argument to tell SQLAlchemy  which key to take); since now *two* foreign keys exists a corresponding join from `Node` to `NodePath` has to specify the key to join with.
Ensured that CUD ops on `node` (and `leaf`) table(s) w.r.t. the now parametrized, functionalized and materialized view `node_path_view` is *only* depending on nodes below each `base` node, but not on other `base` nodes (i.e. not the number of independent users). The result is that  CUD ops take now `O(n)` for n ~ #nodes per `base` node.

Although still not ideal, it is a *huge* improvement over previous setting, where a user with tons of document could slow down ops of other users with a lesser amount of documents. Even the proportionality factor is quite small, since corresponding ops `O(n)` factor is based on a functions performance *inside* the DB (namely the `node_path_view` view/function).