Fix animations to actually start from frame 0 per documentation

Documentation states that sprite frame numbers should begin at 0, but the code actually skips to frame 1. Fixed this. Also made it use a while(true) loop which I think reads more clearly than a blank for
statement.