Changed how folders are handled

Finished separating folders into cache folders and history folders
Reintroduced extensions
.gitignore is less specific