Add io.Writer-based feed generation methods

The current ToXML method returns a string, meaning the content is
buffered into memory before being written to some output. With this
change, XML can be written directly to the output, which may make
a difference with large feeds.

This is a backwards compatible change, as methods are only added.