Make entry relays expire idle client and bridge connections
This is a follow-up to #21406 (moved).
Now that channel_is_client() works, we should use it instead of or_circuit_t.is_first_hop.
This will make circuit_expire_old_circuits_serverside() actually expire circuits correctly.
The rest of the changes are logging or refactoring, the checks are either correct, or have no impact. (In connection_exit_begin_conn(), we will change an end reason from MISC to TORPROTOCOL.)