Fix bug in TxLog handling of null-bytes in log files
Refactor and clean up TxLog

There is still more that can be done, but hopefully it is now a little more readable and
in line with our house style. The parsing could for instance be split out into its own
class.
Organise imports.
Fix for dangling dynamic label issue.

o Given a node with a single dynamic label record, when removing enough labels from it
  to "down-grade" it to use inlined labels, it correctly marked the dynamic label record
  as not in use. However, when removing yet another label, the logic for updating the node
  record did not take into account the (now unused) dynamic label records, and would update
  the node records list of dynamic label records to be empty.

  This in turn led to the log command not containing the information about the dynamic record
  having been set to not in use, and this would susequently lead to dangling label records.
Include dynamic label records when logging a command to delete a node.

o If a node record was set to not in use, the command serialization would not include
  any dynamic records connected to the node record. This meant that when deleting a
  node that had dynamic records connected to it, the dynamic records would not get
  properly updated in recovery mode or on HA slaves.