Support Enumerator as an input source
The Enumerator class can be used to stream data without having to actually write a dedicated class for it. For example:
enum = Enumerator.new do |yielder|
HTTPClient.get('http://some-website.com/some-big-file.xml') do |chunk|
yielder << chunk
end
end
document = Oga.parse_xml(enum)