Things that should be improved:
(includes suggestions from Science Fair judges)
An improved aiming system (gears, equatorial mount, automated solar tracking)
An automatic receiver. I tried using BH1750FVI Digital Light Intensity Sensor Module For AVR Arduino 3V-5V Power $2.00 but I think the best method would be to use a small telescope with a webcam, with motion detecting software (with a selectable area mask) feeding into a pulse-to-character conversion code on a laptop computer or Raspberry Pi.
It could use a pure binary code rather than Morse Code to transmit other forms of data.
Error checking code. CRC, checksum, etc.
An array of independently addressed, but coordinated mirrors to increase bandwidth.