Js refactor and Footer redesign

This is a massive update and I rewrote a lot of functionality. I've checked it thoroughly as I went through but please double check to make sure I didn't break anything especially in the stripe department. I will finish up the application related stuff when I revamp the application page.