Update meta charset

This pull request attends the todo-comment according the update of documents meta charset tag.

If the charset is changed, the charset meta-tag of the document is slected and updated (if existing).

An improvement could be an overload `charset()` method, where the caller can choose if the meta tag will be updated too.

A test is included.
I don't like this. It means that the user can't re-use a default OutputSettings object. The OutputSettings was made static to support that use case.

An alternative is to pull this back out, and on document serialization, the html() method can check the settings and apply the charset if it is different. That works more like how the rest of the serialization settings happen.

Also, we could make a boolean option into settings which will add a meta charset if not defined.