Move 'form' from analyze-file loop to a let inside the loop
Analyze each subform of top-level do forms separately

No changes in crucible test results, except:

(a) potemkin gives fewer warnings, and from my visual inspection it
    appears that this is correct.

(b) automat, which uses potemkin, now lints without throwing
    exceptions.  This project was the one that first motivated this
    change to Eastwood.

(c) data.avl throws a different exception than it did before.  It
    isn't clear to me whether this is a better or worse exception to
    throw, but it seems to be an acceptable behavior change, at least
    until we learn how to change Eastwood to lint data.avl without
    exceptions.  Note that data.avl is the only project in Eastwood's
    crucible that uses gen-interface, so perhaps this exception is a
    general problem Eastwood has with handling gen-interface.