Fix encoding problems with jTidy, provide support for data protocol

This PR fixes encoding issues caused by jTidy not being able to auto detect source document encoding. The node wrapper and java program now accept 2 extra arguments/options for specifying jTidy's source and destination encoding.
It also provides data protocol support (eg. img src="data:image/png;base64,...") by updating flying saucer to the latest version and registering the protocol in the java program.