Added a bunch of files, modified a buynch of files and added a folder for thrown exceptions.