Change last arg of graylog_log to be called userInfo

So it sounds more familiar.
Use a DISPATCH_RELEASE macro instead of #if'ing

Because it looks cleaner. Kind of wish Apple had
done it for me.
Factor out host and base_dictionary global vars

Hostname is pretty cheap to lookup and we had to
make copies of the base dictionary anyways.
Implement IPv6 friendly init
Remove option of synchronous logging
Hack around not accepting id as a userInfo key
Implement more tests