request logger: don't print "empty_string" to logs

The motivation for this patch comes from the request logger logging
"empty_string" for certain annotations. One such annotation is
"darklaunch", which is input as a proplist. An empty proplist is
equivalent to "" in erlang, so the request logger would log
"darklaunch=empty_string" instead of simply ignoring the empty
field.

This patch will make it so that annotations are not logged for
empty strings and lists, matching the behavior for undefined values.
Merge pull request #5 from opscode/sd/dont-log-empty-string

Request Logger: Don't Print "empty_string" to Logs