for #1200 - voucher processing basics working

fix small kinks (emails still incomplete)

finish #1200 - implement vouchers

fix test suite for #1200
for #1200 - brakeman is still mad, but this solution seems better
Merge pull request #1218 from fairmondo/feature-voucher

refs #1200 - implement vouchers