Match NSLog read UID functionality in DDASLLogger

`NSLog` sets the read UID property of ASL messages to the current EUID.  This pull request changes `DDASLLogger` to match the `NSLog` functionality.

Currently, `DDASLLogger` *always* sets the read UID property to 501, which I believe is typically the UID of the first user account after a fresh install of OS X.

The asl(3) library calls are also now checked for errors.

Furthermore, `asl_send` is used directly instead of `asl_log` to remove the level of indirection associated with `asl_log`.
So you dropped the `!= 0` from the first argument to `__builtin_expect`?  If so, the two are equivalent.

I'm using `goto` in an "accepted" manner for cleanup after an error.  Otherwise, I would shy away from `goto` as well.  See [Linux kernel coding style: Chapter 7](https://www.kernel.org/doc/Documentation/CodingStyle).