Implement a connector plugin that reads/writes messages from/to files.

Each connector implements a simplex channel, either transmit or receive.  In-
turn, each client module owns a connector object.

In binary files, an additional FileConnector message header is prepended to
each message written to the output file.  This header specifies
the file format version and the length of the message.  This length
does not include the file connector message header, but does include the
user's message header.

The "text_format" option in the configuration sets text file input/output
mode. In text mode, no header is added, but a newline symbol is appended
to each message instead.

The utility 'get_instance_file()' is used to uniquely name the files.  The
complete file name convention is:

The input file is named 'file_connector_<name>_receive' and the
output file is named 'file_connector_<name>_transmit'.  Where the <name>
is specified "name" field in the configuration.  These names are in turn
pre-pended with the get_instance_file() naming convention.

The file_connector Connector configuration results in ONE ConnectorCommon
object which is used to contain a list of all Connectors being configured.
A vector<> in the ConnectorCommon object holds individual Connector config
objects.  The ConnectorManager then uses this vector<> to instantiate the
set of desired Connectors.
