Log deprecations via configurable io stream

Make `warn_deprecation` use a configuable `deprecatio_io` which defaults to `$stderr`.
This is a proposed implementation for #616

I should mention I based this off the last stable release, as the current master breaks for me?