basic drain and paralyze implementations added

there are a few bugs with it that i plan to fix before monday.  figured
that i'd commit anyway to see if i get it right this time.