CheerpBackend: Improve downcast array creation code paths
CheerpBackend: The downcast array should be used for pointers to complex objects

This guarantees comparability between pointers to base objects of classes that requires the downcast array
CheerpBackend: Preserve PointerAnalyzer inside AllocaMerging
CheerpBackend: Add registerize pass
CheerpBackend: Add a utility class to handle PHI nodes between BasicBlocks
CheerpBackend: Integrate registerize into the Writer and NameGenerator
CheerpBackend: Stub support for inttoptr