It's working right now using a transistor to switch the power and resistor to limit current to the LED, but burning half a watt on a battery powered project is pretty bad.
I've been looking at the little power supply boards online but they all seem to want 12V in and power 1-3 LEDs in series. I'd rather use as few batteries as possible. Also, ideally I'd like to switch the LED as fast as possible (clean square wave in the 10's of kHz range), which the transistor solution lets me do.
Unless I'm mistaken, I think he asked for a PWM solution?... there are plenty of other ways including a switching regulator for a couple of bucks off of ebay (this is the most efficient way though for the price) but feel free to play with the 555 if you want a cheap solution to make your circuit more efficient.