fixed database vacuum issue
	was within transaction -> moved outside

changed page's charset to UTF8
	hopefully everywhere..
	should fix issue #3

added helper to detect string's encoding,
and change it to UTF-8 (if needed)

added some additional code comments