Handle non-string messages in Log::method() calls

Passing a more complex variable like an object or array to one of the Log calls spits out an error exception. This patch converts these messages into a `print_r` representation.
handle JsonableInterface/ArrayableInterface in Log::method() calls
Merge pull request #3810 from ceejayoz/patch-1

Handle non-string messages in Log::method() calls
Cleaning up some code.
Fixed log writer docblocks