MIRTH-2480
Updated the framework for batch support so batch properties are stored and retrieved from data types instead of on individual connectors. Removed the batch properties from File Reader and TCP Listener and moved them to BatchProperties. Each data type that wants to support batch now needs to implement BatchProperties and call super in the get and set propertis methods. Currently only HL7V2 and Delimited are implementing this.

Batch messages should now be dispatched with dispatchBatchMessage instead of dispatchRawMessage. Doing this explicitly instead of implicitly within dispatchRawMessage makes handling responses much easier.

Now storing a batch adaptor factory on the source connector instead of a batch adaptor on the data types. The factory will generate a new batch adaptor for each message. Batch scripts will be added via the factory on deploy and removed by JavaScriptUtil when all the other channel scripts are removed. 

MIRTH-2316
For batch support that caches the entire message in memory and retrieves the individual messages from the cached message, as well as streaming from a Java Reader object, stopping the channel will now finish all of the messages in the batch. Streaming batch from TCP currently does not finish all of the messages in the batch when the channel is stopped because of difficulties when the connection is kept open. Halting a channel will still stop the batch immediately.

MIRTH-1800
Added "batchId" to the source map which indicates the message Id of the first message in the batch. This can be used to correlate which messages came from the same batch.

MIRTH-2132
Added "batchSequenceId" to the source map which is a sequence starting from 1 that orders the messages within a batch.