this is an awful commit. i changed everything.

i removed all the MPI-2 workarounds and everything related to them.

i undid my nonblocking implementation using requests and moved to just
using flush.

in theory, i will redo all of this with proper granularity and
associated comments.

all 41 tests pass on Jeff's laptop now though.