'Initialize a new message from header, metadata, and content
dictionaries.
To assemble a message from existing JSON fragments, use the
``assemble`` method.
To create new messages with automatically generated headers,
use subclass ``create`` methods.'

def __init__(self, header, metadata, content):

    self.header = header
    self.metadata = metadata
    self.content = content
    self._buffers = []
