Add control over serialization format issue #40

This adds SerializeWithFormat() as a public API that allows control over the formatting flags.

In addition, the convenience function ToUnformattedXml() was added. It returns the XML as an unformatted string, helpful when either assembling text documents or running unit tests on classes that generate XML using gokogiri.

Finally, documentation strings were added for the existing serialization functions.