Process: Modify interface to allow creation of packets at nodes

The singular-packet process method now also takes a collection as a
parameter, used as an out-variable, which the implementation should
populate with any packets resulting from processing the inbound packet.
This may be zero or more command or data packets.
AbstractProducer: Add a basic implementation of the singular process()

Simply process any command packets encountered.