Streamline the use of QUICHE_EXPORT macros in quic/core.

Previously, we had files that were in core/ that were not compiled in Chromium quiche component since they were not used there; because of that, those had to be manually tagged as QUIC_NO_EXPORT and be kept in sync with the structure of Chromium build files.

This CL changes this to a much simpler approach of "everything in quic/core except for I/O directories uses QUICHE_EXPORT".  This works because:
(1) The linker will remove unused code anyways, so binary size should not be a concern.
(2) We already build all of this code for tests, so it is neutral in terms of build time.
(3) All of this code is already either cross-platform, or does not build for Windows (which is the only platform where QUICHE_EXPORT can cause things to fail to compile).

This CL is a google3 counterpart of build file refactor in https://chromium-review.googlesource.com/c/chromium/src/+/4848368

PiperOrigin-RevId: 563502086
diff --git a/quiche/quic/core/tls_client_handshaker.h b/quiche/quic/core/tls_client_handshaker.h
index dd7e393..eaea623 100644
--- a/quiche/quic/core/tls_client_handshaker.h
+++ b/quiche/quic/core/tls_client_handshaker.h
@@ -23,7 +23,7 @@
 
 // An implementation of QuicCryptoClientStream::HandshakerInterface which uses
 // TLS 1.3 for the crypto handshake protocol.
-class QUIC_EXPORT_PRIVATE TlsClientHandshaker
+class QUICHE_EXPORT TlsClientHandshaker
     : public TlsHandshaker,
       public QuicCryptoClientStream::HandshakerInterface,
       public TlsClientConnection::Delegate {