minor cleanup everywhere
 - added character encoding (UTF-8)
 - fixed some incorrect/illegal html tags
 - moved rest of JS event handlers from HTML to JS