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.