DomDocument string generate

Adding the generate function to the DomDocument::saveXML function in
order to work with string rather than object.

Also updated the Symphony::Configuration()->write() methods for saving
config data in 2.4 onwards.
Fix regression bug due to hashing the url

Hasing the url was made to prevent duplicates in the DB.
But this makes expiring entries on save failed.

I fixed it by insuring the hased url is always used.
code clean up and fixing #8
serialize before hasing
Merge pull request #16 from orchard-studio/2.4-fixes

DomDocument string generate
Merge pull request #17 from DeuxHuitHuit/hash-regression

Fix Regression