Single threaded queues

- [ ] @EEE3 please test and merge
- [ ] tests
  - verify no messages are left in a buffer
  - verify pending_* metrics log appears when value is 0
  - verify multi-thread uses multiple threads  (for fast, it's possible the message will process fast enough to not use all threads for processing)

Additional review steps for:
- [x] @dachew
- [ ] @sneal 
 please review [this commit]
(https://github.com/daptiv/Daptiv.Bus/commit/21431fe6eb175e5518cb6bf95111fa5a4ac2be2f).  you can review other commits too, but this one is the risky commit of the PR.  the PR also become bloated with some troubleshooting so many of the changes don't contain anything of interest.