well now these lines aren't validated even though the default config was validated; a suggested flow:

```
shared_frontend_lines = @opts['shared_frontend'] || nil
...
else
  shared_frontend_lines << watcher.haproxy['shared_frontend'].map{|l| "\t#{l}}
end
...
new_config << generate_shared_frontend(shared_frontend_lines.flatten)
```