add SameThreadOperationHandlerExecutor for use in PreciseIndividualBlockingOperationStreamExecutorService #26 https://github.com/ldbc/ldbc_driver/issues/26
results from best case micro benchmark:
    Spinner [Sleep = 0 ms] (thread pool executor) 100000 ops in 00:00.057 (m:s.ms): 1731.6017316017317 ops/ms
    Spinner [Sleep = 0 ms] (single thread executor) 100000 ops in 00:00.050 (m:s.ms): 1980.1980198019803 ops/ms
    Spinner [Sleep = 0 ms] (same thread executor) 100000 ops in 00:00.016 (m:s.ms): 6191.9504643962855 ops/ms

    Spinner [Sleep = 1 ms] (thread pool executor) 100000 ops in 00:00.051 (m:s.ms): 1942.8793471925392 ops/ms
    Spinner [Sleep = 1 ms] (single thread executor) 100000 ops in 00:00.054 (m:s.ms): 1843.9977872026552 ops/ms
    Spinner [Sleep = 1 ms] (same thread executor) 100000 ops in 00:00.015 (m:s.ms): 6317.119393556539 ops/ms

    Spinner [Sleep = 10 ms] (thread pool executor) 100000 ops in 00:00.053 (m:s.ms): 1876.172607879925 ops/ms
    Spinner [Sleep = 10 ms] (single thread executor) 100000 ops in 00:00.047 (m:s.ms): 2100.8403361344535 ops/ms
    Spinner [Sleep = 10 ms] (same thread executor) 100000 ops in 00:00.015 (m:s.ms): 6377.551020408164 ops/ms
set SameThreadOperationHandlerExecutor as the default for use with Blocking service, in preparation for support for multiple concurrent Blocking executors