Rework API completely.
Start new upstreams implementation.
Split addr definition from the utils code.
Rework host/port/priority parsing.
Add some basic logic for upstreams.
Allow multiple addresses per upstream.
Upstreams get implementation.
Fix lua upstream code.
Merge branch 'upstream-rework'