allow the http client stores to have an auth context

We start with a login / password scheme for http basic auth.
pkg: missing flask, flask-restx and dateutil dependencies
app: missing file
http: allow the class to be mixed in

The mixer will have to provide the .bp and .api objects.
missing __init__ file to have a working package
build: adjust to bookworm and python 3.11
api: also bring http support to the versioned kvstore
pkg: fix project url
dbcache/set: accept an int lifetime

It will be interpreted as seconds.
api/http: provide an implementation of the api over http

Right now we do it for the kvstore.
The versioned kvstore might come next.
The "dbcache" won't be exposed.
conftest: simplify more
conftest: stop wasting disk space
Added tag 0.4.0 for changeset 769b47a2c2a5
hgignore: filter out test files and pytype folder
doc/readme: bring clarity
api/stores: fix the handling of falsy not None values
make sure we are robust in the face of fancy namespace names