Reland "Make compiler/optimizing/ symbols hidden."

This reverts commit 0a51605ddd81635135463dab08b6f7c21b58ffb0.

Reason for revert: Reland after some of the required work
was merged in other CLs.

Also address a TODO from the original CL to mark required
symbols with EXPORT in `intrinsic_objects.h`.

Also mark symbols in new files as HIDDEN.

Bug: 186902856
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Change-Id: I936d448983928af23614ca82c2d0bf9a645e2c52
diff --git a/compiler/optimizing/nodes_shared.h b/compiler/optimizing/nodes_shared.h
index 7dcac17..27e6103 100644
--- a/compiler/optimizing/nodes_shared.h
+++ b/compiler/optimizing/nodes_shared.h
@@ -22,7 +22,7 @@
 // (defining `HInstruction` and co).
 #include "nodes.h"
 
-namespace art {
+namespace art HIDDEN {
 
 class HMultiplyAccumulate final : public HExpression<3> {
  public: