Update parking_lot, base64, and slog.
Move binary dependencies into a feature, and build by default.
This allows library users to avoid building clap, slog-term, and daemonize.
Don't build binary deps for --lib in CI/CD
ip_network_table crate is exactly what we need so use it instead of
own trie impl. Big code/complexity reduction. Keep all unit tests.
This in turn uses ip_network and treemap crates, these both
look good too. (wireguard-rs also uses these, fwiw.)
Make small changes to rest of code as needed. AllowedIps interface is
mostly the same but I couldn't resist a few tweaks.
The API for SealingKey and OpeningKey changed to have these structs
manage their own nonces. Instead we switch to LessSafeKey so that we can
continue to manually manage nonce values.