add libosmo-mslookup abstract client

mslookup is a key concept in Distributed GSM, which allows querying the current
location of a subscriber in a number of cooperating but independent core
network sites, by arbitrary service names and by MSISDN/IMSI.

Add the abstract mslookup client library. An actual lookup method (besides
mslookup_client_fake.c) is added in a subsequent patch.

For a detailed overview of this and upcoming patches, please see the elaborate
comment at the top of mslookup.c.

Add as separate library, libosmo-mslookup, to allow adding D-GSM capability to
arbitrary client programs.

osmo-hlr will be the only mslookup server implementation, added in a subsequent
patch.

osmo-hlr itself will also use this library and act as an mslookup client, when
requesting the home HLR for locally unknown IMSIs.

Related: OS#4237
Patch-by: osmith, nhofmeyr
Change-Id: I83487ab8aad1611eb02e997dafbcb8344da13df1
diff --git a/.gitignore b/.gitignore
index 8d4b450..acfea84 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,6 +51,8 @@
 tests/db/db_test
 tests/hlr_vty_test.db*
 tests/db_upgrade/*.dump
+tests/mslookup/mslookup_client_test
+tests/mslookup/mslookup_test
 
 # manuals
 doc/manuals/*.html