Reformat - removing empty lines in imports

Extraneous empty lines in import blocks have been removed. These
were added automatically by a vim formatting plugin for Go. I do not
want to use a formatter other than the standard gofmt tool.
Adding ReadSingleBlocking/WriteSingleBlocking(...)

PointerQ now supports blocking calls to single reads and writes. While
using these queues in the matching engine it was found that having
blocking calls available made the queues significantly easier to work
with.

In the future we will review whether or not to keep these methods and/or
add similar blocking versions to each of the other queues. If blocking
methods, which look very desirable, are added other things will need to
be prunced to maintain a reasonable interface surface area. Likely
candidates for sacrifice include the *Lazy methods and perhaps the
ByteChunkQ struct.
Adding pause value (0) to newCommonQ(...) in tests
Test for reads/writes size broken at end of buffer

A call to commonQ.acquireRead/acquireWrite(...) can return less than the
requested buffer size if a buffer of the requested size would run past
the end of the ring-buffer.

i.e. (from % size) + bufferSize > size

The tests failed to account for this condition would report that the
'Actual read/write size could have been biggger...'

This is now fixed.
Concurrent tests breaks single producer/consumer

The tests would run a large number of independent reading/writing
goroutines causing test failures in a scenario which the queues were
never intended to run.

The full set of reads and writes are completed by a pair of goroutines
and each test run is synchronized by a boolean channel signalling
completion.
fstronv tests calling wrong method.
Fixed defect in NxtPowerOf2(...) unit tests

Previously we were testing the wrong value.

The current spate of unit test failures suggests that a continuous
integration system may have some benefit.