Adds input sanitation

Externalized the stylesheet, moved changes to separate file, moved more
HTML out of the .py file.