Fix ex 6 1
Fix ex 6 1

While working on exercise 6 2 I found a few bugs in my implementation of
getword. It became clear that skipping comments, preprocessor lines, and
strings was only working sporadically. In retrospect it's obvious that
string skipping wasn't working, because my tests showed that every
keyword was present at least once which is only true if you count the
string constants in the initializer. The test cases I added did not
trigger the bugs.

This fixes two main bugs: first, if one preprocessor line directly
followed another, only the first was skipped. This is because I didn't
check for another line after the completion of the first. I've converted
this to a while loop. Second, the additional whitespace checks were
eating characters at the beginning of words. I moved these into the
conditionals to fix this behavior.

I'm now concerned about whether this function can detect, for example,
preprocessor lines that directly follow comments. I'll test this next.

petosegan/krc-solutions