Huge clean up. Finally got rid of the last of the hand rolled html.

Did some major refactoring on components and removed some copy-paste-fu