Please see the discussion of #15367 for detailed rationale. Essentially, the idea is to indicate, via creation of a file, that bitcoind is not only running but ready to actually use. This should provide a convenient way for scripts to reliably start bitcoind, wait for it to become ready, and then subsequently start any other services (e.g. lnd) that depend on it.
This PR also adds a -ready argument for specifying the name of the ready file (default: $DATADIR/.ready)