Improve landing page
The landing page is currently server side rendered, which is suboptimal since it takes several seconds for it to load, it should be changed to client side with a loading icon on the page. The error messages should also be improved.