sms: Give smsc its own VTY config node

The pre-historic sms_queue code used to have very strange aspects,
such as having some parameters (max-failure, max-pending) which could
only be sent from the 'enable' node, but not from a config file.

Before adding more configuration parameters, let's clean this up by
introducing a proper VTY config node for the 'smsc'; move the existing
config commands there and add new ones for max-failure and max-pending.

As the sms_queue data structure is only allocated after the config file
parsing happens, we are introducing a new 'sms_queue_config' data
structure.  This encapsulates the public readable/writable config
parameters.

Change-Id: Ie8e0ab1a9f979337ff06544b9ab3820954d9804a
diff --git a/tests/test_nodes.vty b/tests/test_nodes.vty
index 14f15a2..a67f202 100644
--- a/tests/test_nodes.vty
+++ b/tests/test_nodes.vty
@@ -5,6 +5,7 @@
   network
   msc
   sgs
+  smsc
   mncc-int
   hlr
 ...
@@ -46,7 +47,6 @@
 OsmoMSC(config)# msc
 OsmoMSC(config-msc)# list
 ...
-  sms-database PATH
   assign-tmsi
   lcls-permitted
   no lcls-permitted
@@ -178,6 +178,9 @@
  local-port 29118
  local-ip 0.0.0.0
  vlr-name vlr.example.net
+smsc
+ queue max-pending 20
+ queue max-failure 1
 end
 
 OsmoMSC# configure terminal