Changed signatures generation mechanism

The previous signature generation approach used 0MQ queues, which were likely to overflow for large number of relayed messages, which lead to deadlocks. In the new approach, the requests are added to a synchronized queue and the crypto workers can take the requests from the queue and process them. The results are passed using the 0MQ channel, so that the Node class can obtain them as before.

This new approach enables to use multiple signing threads. The Node API has been extended to support this new feature. Also, a new example illustrating multiple crypto workers has been added.