Make sure Samba optimization FW rules get properly handled.

This take care of the following issues:
1) there could be a racing condition where Samba would be trying to apply
   the rules right while the firewall was starting and trying to do an
   iptables-restore, causing the latter fo fail, and leave us with an
   half-configured iptables.  Using rc notification will serialize those
   iptable manipulations rather than having both in parallel (issue
   on an SMP environment)

2) Restarting the firewall without restarting Samba would mean those rules
   would be lost until Samba got restarted.  We now re-apply then inside
   start_firewall() if the smbd process can be found running.