Introduce buttons

Use buttons to improve the UX (hopefully). Also changed all templates to be `.html` files. The templates are due for a refactoring but I'm going to hold off for now.