What are the functions of the ULN2003A and HCF4094 within this circuit?
The HCF4094 is an 8-stage shift register and latch with tri-state outputs.  The outputs of these latches are input to the ULN2003A, which contains 7 NPN Darlington high-current drivers.  Its output appears to be driving some sort of clock display.  Only seven of the eight outputs (Q1-Q7) are used on the HCF4094, while the eighth (Q8, pin 11, not marked on the schematic)is unused; this is to match up with the seven drivers of the ULN2003A.

The ATMega328 sends serial data over the data lead (pin 13) to the HCF4094 chips.  The strobe lead (pin 14) is used to transfer the data from the shift register to the latches of the HCF4094 chips.  The clock (pin 12) is used to clock in the serial data.  (For some reason, this is shown as Clear on the schematic for the HCF4094, but as Clock on the HCF4094 datasheet.) The output enable is driven by a lead (pin 15) of the micro which is labelled PWM, so I assume this is being used to control the brightness of the display.

Note that the clock and strobe lines of the chips are all tied together.  However the data lead coming out of the ATMega is only tied to the input Data lead of the first HCF4094 (just below the micro).  (Very frustrating this schematic doesn't have part designations like U1, U2 etc.) Then the serial out lead of the HCF4094 (pin 9, not labelled) is fed into the Data in pin of the top right HCF4094.  Likewise, its serial output is tied the last HCF4094. So this allows 24 bits of data to be shifted in at once.  After all of the bits have been clocked in, the Strobe bit is used to transfer the data from the shift registers to the latches -- this way the display doesn't flicker as the data is shifted in.