libdeng2: Log entries are now serializable

Added ISerializable for LogEntry and LogEntry::Arg.
libdeng2: Convenience templates for Reader and Writer

(De)serializing a list of objects, and reading values using a different
type than the destination (e.g., with enums).
libdeng2: Template for deserializing a Packet from a Block

Reducing redundancy using a template.
Shell|libdeng2: Defining libshell's network protocol

Starting out with minimal functionality: console commands and
log entries.
Shell: Sending commands to the server using libshell