Fix the lumberjack protocol

Non-string data was being dropped by the protocol
Keys could only be nested one level deep