add UTF-8 encoding header to all Ruby files with logic

Fixes Asciidoctor running on systems that have a filesystem encoding different from UTF-8. Since Asciidoctor forces all input strings to UTF-8, the Ruby source files also need to be read this way.