ActiveJob: allow blank queue names

As discussed in #17195, Que uses blank queue names by default for
performance reasons. At the very least, ActiveJob should allow users to
choose "" as their queue name. This commit allows blank queue names, as
well as tests to make sure that nil queue names still use the default.
Merge pull request #17223 from bgentry/active-job-empty-queue-name

ActiveJob: allow empty queue names