Use launchctl to obtain session bus address on OS X

The "standard" way to launch dbus on OS X is through launchd which
is responsible for allocating a unix domain socket and then passing
it to dbus. This patch splits out a platform specific method to obtain
the session bus if DBUS_SESSION_BUS_ADDRESS is not set. On OS X
launchctl is queried while on other platforms dbus-launch is used
as before.
Only send unix credentials on !darwin

This patch will send a simple null byte without
unix credentials on the darwin platform. For all
other platforms, the Ucred syscall is used as
before.
Merge pull request #32 from jessevdk/launchctl

Use launchctl to obtain session bus address on OS X
Merge pull request #33 from jessevdk/unixcred

Only send unix credentials on !darwin