improved handling of invalid chars in filename, should now handle everything
also print occurence ratio of similar tags
extended tag substitution list