This patch removed the dependency on flask-classful. This required
making all of the flask web routing non class based.
This patch also changes the aprsis class to allow retries for failed
connections when the aprsis servers are full and not responding to
login requests.
This patch replaces the ratelimiter library with rush for rate limiting
as the ratelimiter package doesn't work with python 3.11.
This patch also refactors the flask.pu to admin_web.py and
aprsd.py to main.py
The APRS_LOGIN and APRS_PASSWORD arguments now fallback
to the config file if it exists.
First it checks the passed in parameters, then checks the
environement vars, then checks the parsed config to find the
login and password.
This patch also adds unit tests for the send-message command to
check the fallback.