Add explicit queue parameters to logging.async functions

Because some projects use multiple logging threads, it
is necessary to be able to specify an explicit queue. This is accomplished by adding an optional queue parameter to each function.

One mildly breaking change is that `start-thread-pool!` no longer accepts an `io-error-handler`, opting instead to receive it from the `log-config`.

Another kind of breaky change: we renamed the file from `log_async.clj` to `async.clj` to match its namespace declaration. This is seemingly in conflict with @oneness's 9b38b66af08dbc7e59a527df6eb02417e6840f0c. We should have a discussion about the reasons for that change, as it makes consuming kits logging sort of strange.