tests: start housekeeping for tests

Rename tests and remove odd `testbulk.py`. The goal is to add tests
for manager and use pysnmp to test SNMP without a local agent.
gitignore: add coverage results to files to be ignored
types: IpAddress is expected to be exactly 4 bytes

IpAddress SMI-v2 type is not a in number-and-dots notation but in
binary form. We keep accepting the former representation.
types: first, try binary form for IpAddress, then dotted-quad

1001 is valid and binary form.
100 is valid and dotted-quad (0.0.0.100).
999 is not valid.
0999 is valid.
0100 is valid and binary form.
types: allow to compare timeticks with timeticks
tests: use pysnmp instead of local agent for real SNMP tests
tests: use the same SNMP agent for all tests
tests: test for GETBULK operation

Also, fix GETBULK to get the expected number of OID
snmp: fix indentation and style

Spaces and tabs were mixed. A mess.
mib: fix indentation
test: test with SNMPv3 agent

It seems that there is some race condition in the way the SNMP agent
is run. This is not strictly a threading problem since it works fine
in a separate program (still in a thread). To workaround this, we use
multiprocessing instead.
test: put Test SNMP agent into a separate class
bin: replace main script with an entrypoint
setup: teach setup.py about running tests
setup: use options from net-snmp-config and pkg-config

To compile `snmp.so` and `mib.so`, rely on `net-snmp-config` and
`pkg-config` for better portability.
test: add tests for manager
test: test with Travis CI
README: add Travis-CI icon