init datatocontext and itemcontextchain

These two variables were not being reinitialized between classification
passes, which seemed problematic. Also add a note about why all the
variables are dereferenced before assignment, since I tried to assign
`[]` and made perl crash!
specify excluded data in Result

Store the indices of the excluded data items in `Result` instead of
simply the number of items that were excluded. Update tests for
`Result` to reflect this. Update the datahooks test to use the `Result`
API instead of reading printouts. Update all code in both files
to use the latest APIs instead of reading data from disk.

Update TODO.
update bicmp and exports tests to latest API

Update bigcmp and exports tests to use the `Project` and
`Result` APIs instead of reading disk. Delete now-unneeded test
project.
add gang effects method to Result

Place the gang calculation logic in a separate `gang_effects` method
and test that instead of the printout. Place the gang effects test
with the other classification tests, and delete the now-unneeded
`06-gangs.t`.

Make changes where necessary to make the whole process clearer. Change the gang printout so that it doesn't repeatedly print the test item. Update the documentation for misunderstood variables in AM.xs (issue #11). Remove unneeded libraries from 01-Result.t.

Update TODO.
Use gang_effects accessor in printer

Change the `gang_summary` method to use the processed gang effects
given by `gang_effects`. Printing is greatly simplified and much
more understandable using the newer data structure.
FINALLY get rid of printing

Replace logging module with `Log::Any`, and use `is_warn`, `is_info` etc. to avoid creation expensive reports. During testing logging is off, making the test suite much faster. No more IO to the terminal or to amcpresults without the user specifically asking for it.

Print the analogical set and a gang summary at info level, and gang summary
with items listed at debug level. Remove the `-gangs` and `-skipset`,
options, which are replaced by log level, and remove the relevant eval
preprocessing and some of the documentation.

Update documentation, though not fully (because something is likely
to change), adding notes about what information is logged and a better
synopsis that uses a `Result` object.

Update TODO.