Hierarchical self-assembly of a host-guest porphyrin array