Feature/routedns

does away with all the resolveconf nightmare by simply rerouting dns packets instead of blocking them. no need to ever change /etc/resolv.conf again!

sometimes one follows the correct path only once all other paths have been exhausted.
```
Comparisons to singletons like None should always be done with is or is not, never the equality operators.

Also, beware of writing if x when you really mean if x is not None -- e.g. when testing whether a variable or argument that defaults to None was set to some other value. The other value might have a type (such as a container) that could be false in a boolean context!
```