Added a retry count to the sending endpoints

references #23 also fixes #19
Adding retry counts for the data transferring channels.

references #23
Adding message send retry counts to the ProtocolChannel.

references #23
Added maximum number of retries for message sending to the protocol layer.

references #23
Adding reliable message delivery to the TCP pipes. Named pipes don't need this configuration turned on because they are reliable by default.

references #23 & #19
Reordering the parameters of the IProtocolChannel.TransferData method so that they're more inline with the method on the IProtocolLayer interface

references #23
Fixing the unit tests to take into account the new retry count parameter

references #23
Adding message delivery confirmation to both the message and the data channels. This provides better information about the necessity of a message / data resend and the necessity to rebuild the channel.

references #23 and #19
Adding the delegates for sending of messages.

references #23
Adding the retry counts to the send-and-wait-for-response methods.

references #23
Moving message processing actions over to use the SendMessage delegate.

references #23
Switching the NotificationProxyBuilder to use the SendMessage delegate

references #23
Adding the retry count to the send-with-response delegate.

references #23
Fixing the ProtocolHandshakeConductor to use the standard number of message send retries.

references #23
Updated the InteractionHandshakeConductor to use the SendMessage and SendMessageAndWaitForResponse delegates

references #23
Updating the code for the DownloadDataFromRemoteEndpoints delegate to use the default retry count.

references #23
Updating the registration for the UnknownMessageTypeProcessAction

references #23
Adding a delegate used to send a command message to a remote endpoint.

references #23
Adding the attributes used to indicate retry count and time-out values on the command interface.

reference #23
Creating a base class for the command set method interceptors and adding the ability to provide time-out and retry values.

references #23