arti,arti-client,tor-memquota: Always enable the memquota system
For #2030 as part of congestion control / flow control. The main changes are:
tor-memquota:
- Support the "auto" config value for the
max
andlow_water
options. - Change the default to be enabled rather than disabled.
- When enabled with "auto" (the default), a
max
is chosen based on the system's total available memory (and cgroup on Linux). - There is a small breaking change in the config builder struct, which may cause type inference breakage for the few users who set memquota config options in the code.
arti/arti-client:
- Always enable the "tor-memquota/memquota" feature.
- Make the "arti/memquota" and "arti-client/memquota" features no-ops.
I'm not a big fan of the sysinfo crate, but it seems good enough for now.