I spent some time reading KA7OEI's great article on creating a good linear current driver for an LED or laser based communication system. The basic idea was pretty straightforward, so I decided to try it out when I got home. The "simple" circuit that I had before was in no sense linear: the audio became severely clipped by the action of the LED. KA7OEI shows how you can use an operational amplifier to provide a linear current source. I'll draw up the schematic in the next few days, but if you read his pages, you'll probably find it easy to figure out.
My silly experiment with an LED communicator naturally led me to looking up more complex (and better engineered) versions of the same kind of circuit. There are now cheap LEDs that can emit a watt or more of energy, and produce a prodigious amount of light. It seems like an area which is ripe for amateur experimentation (and just general mucking around) and could leverage some of my optical design skills as well. KA7OEI has some really good ideas and circuits for driving these kind of LEDs with as little distortion as possible, and will be definitely worth looking at: