Added implementations from the paper

Added integralWhen (etc.), integralReset (etc.), and switchChoice.
In the process, I also added isEvent, constA, and integral
Created the ArrowSwitch type class to capture switching behavior (there
are no instances, but some functions make use of it)