Reimplement low level data sending

A feature of writing of the buffer by chunks of 512 bytes (by default)
was introduced earlier as the developers option in order that it was
possible to regulate load of the CPU and quantity of emitted signals of
bytesWritten() just change WriteChunkSize value in source code.

As shows of the practice, the most optimal mode is writing of whole
content of the buffer without division into chunks. It reduces load of
CPU (because reduces a quantity of the events triggers) and also
simplifies the source code.

But potentially there can be negative consequences of writing of whole
buffer directly in case of broken driver:

* A kernel panic (or BSOD) in case of writing a data large than
driver's internal queue.

* Can be transferred not all data from the buffer, but only their part.

Change-Id: I0fcac1ccf3c752579978b4745771accbf8274267
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>