XML indentation with environment support

Complements #612 

This is a draft to get more suggestions. With this pull request I added a support to `indented` method to get a value from environment as discussed in #612.

Since this change affects `MockSerializationResult`, the constructor was deprecated and a new constructor with `Environment` parameter was added to keep compatibility backwards.

After this pull request, we can add the same support to JSON serialization.

Docs will improved before merge.
although it will throw an exception if the key is not found.

I guess we could change the supports method to return false if the key doesn't exist.