bounce: cleanups & results storing
bounce: added tests and bad_bounce_to

bad_bounce_to allows adding email addresses to config file and rejecting bounces to those email addresses.
bounce: store invalid addrs in list file
bounce: refactored. a lot.

best not to look at the diff, and instead just look at the plugin before and after. New version has functions with names that describe what they test.

Each check can be enabled/disabled in bounce.ini section [checks]

Rejection can be enabled/disabled for each check in bounce.ini [reject]

Config refreshing is done by refresh_config, once per connection.

Extending with future checks is straight forward.

Tests are included.
bounce: updated docs
bounce: added tests for reject_all
bounce: added config defaults
bounce: added backwards compat for bounce.ini settings
bounce: updated for new boolean config opts
hook bad_rcpt during data (was data_post)
bounce: s/emit: 1/emit: true/ (3x)