Add dns resolver

This pull request adds a DNS resolver based on libevent's evdns resolver.

Compared to the resolver used by OONI, this one is quite limited; however, the implemented features are more than enough to implement all the tests that we have committed to implemented.

In its basic form this code is suitable for resolving DNS names for connecting to remote hosts, etc.

There is also the possibility, however, to specify advanced resolver options (namely, use alternative servers, limit the number of retries of DNS queries) and this should allow to implement a basic OONI's dnst.
This is nice. We should start using namespaces also elsewhere in the code base. For example all classes in Common begin with `Ight`, they should instead drop the prefix and use namespaces.