Updated a lot, still need to finish up the responsiveness