server: used named (vs inline anon) functions

and add aliases for host and port (increase readability)
server: consistent config handling

* added load_smtp_ini() with booleans + callback
* merged apply_defaults into load_smtp_ini
* replaced config loading (3x)
* removed cfg passing

It's not yet a convention in our code, but what I've been using consistently
in the plugins and elsewhere is:

   cfg = a reference to whatever is returned by config.get()
   c = a reference to something within cfg
server: moved defaults obj into load_smtp_ini()
Merge pull request #731 from msimerson/server

server: consistent config handling