There is a lot to like about the Arduino, but I can’t help but think that the existing library system removes some of the power that the AVR could supply in its effort to handhold new users. I’m not the only one: the guys over at makehackvoid.com have written a new set of runtime libraries that are more efficient to help. I haven’t had a chance to use these in a projects, but I’m leaving this bookmark here so when I get around to it, I’ll consider it.
MHVLib- An Efficiency Oriented Runtime Library for AVR Microcontrollers | Make, Hack, Void.