frameencoder: fix handling of no thread pool being present

The encoder should run properly without a thread pool instance
encoder: move thread pool initialization to create(), handle pool options better

Previously WPP essentially owned the thread pool and the two configurations
were tied together (disabling WPP disabled the thread pool and vice-versa). Now
we have three features which use the thread pool and they can be enabled or
disabled independently of WPP.

After this commit, if all the pool features (WPP, PMODE, PME) are disabled then
the thread pool is not created.  If --threads 1 is specified, then no pool is
created.  When no pool is present, all pool options are disabled.

Reporting for all the pool options has been moved into the one log line:
x265 [info]: WPP streams / frame threads / pool  : 8 / 2 / 4 / pme / pmode

They didn't really belong on the 'tools' log line since they are not coding
tools like SAO or AMP.

This commit also fixes CTU stats logging in the absence of WPP
param: combine CTU size and RQT depth log lines (just saves space)
analysis: fix for csp:444 decoder crash - CABAC context state handling
docs: try to explain behavior of related thread pool options