Smtp client

    • smtp_forward, moves config loading into exports.register() with a callback
    • line_socket: rename 'self'  -> 'socket', which is more descriptive
    • smtp_client: made timeout handling more robust
        • moved 5 var STATE_* constants into STATE { ... }
        • renamed 'self' -> 'client', which is more descriptive
        • only load tls_key & tls_cert if tls_enabled is enabled
So, if this code is grabbing a new smtp_client from the pool, because the one it got was dead, shouldn't it be doing something smart with that dead client in the pool?  What prevents the pool from filling up with dead clients?