I'd much rather keep the code simple though. The problem is simply: if <dir>/config/smtp.ini is not there then Haraka shouldn't start. All those tests lead up to the same conclusion.

The problem with your version is if you pass it something like /usr/local/share/foobarapp which has a config directory, you only get a "No smtp.ini in: ..." error, rather than what we really want to say which is: "Did you install a Haraka config?".