Do a better job of ignoring pylint no-member errors
Several files had pylint no-member disabled for the entire file
to avoid a few specific false positives for the test. This will
prevent us finding genuine bugs in those files. Instead, add a
project level `.pylintrc` which lists specific member names
that pylint has trouble with as generated-members.
The only risk with this is if there happens to be a genuine
no-member error for a different member with the same name as
one of these whitelisted members, but that seems like a smaller
risk than the risk of there being a genuine no-member error in
any of the files where we were turning the check off for the
entire file. This will also avoid the same errors in files which
didn't have a file-wide no-member, including all the tests.
Most of these false positives are caused by modules being clever
about stuff and may not be possible for pylint to fix, but one
does seem like a straight-up pylint bug, and I've reported it:
https://github.com/PyCQA/pylint/issues/1165
for that one I added a single-line disable of no-members instead
of including __members__ in the `generated-members` list.