Add AV unit test, move some parts of test engine to common file

Addresses #46

This does not compile vs. master becuse it depends on fi_eq_err_entry::index which will come in PR on master if we like this approach to async av_insert.  [edit: that PR is now posted]

My initial request is to review this as an example of av_insert usage, if approved, I will PR adding the indexm then PR usnic support for the usage model in this unit test (it passes the tests).

usage is:
```bash
fi_av_test -d <base_good_address> -n <num_good_addresses> -D <bad_address>
    base_good_address is an the start of an address range that should resolve correctly
    num_good_addresses is the total number of good addresses in the address range
    bad_address is an address that should fail to resolve

e.g. fi_av_test -d 10.0.1.1 -n 4 -D 10.1.1.1
    means 10.0.0.1, 10.0.0.2, 10.0.0.3, 10.0.0.4 should insert OK and 10.1.1.1 should fail
```

Signed-off-by: Reese Faucette <rfaucett@cisco.com>
I see that you use it in several places below, so this is probably intentional.