handle block time out
remove TransmissionContext before cancelling it to ensure thread safty
To assign a draft to a request, do:

To assign a draft to a request, do:
Request request;
request.EndPoint = EndPointManager.Draft03;
// or
request.Send(EndPointManager.Draft03);

To create a server with specified draft, do:
CoapConfig config = new CoapConfig();
config.Spec = Spec.Draft08;
CoapServer server = new CoapServer(config);