Changes I made a few months back, didn't finish it before I ran out of spare time. Looks like the main branch is still going so i'm uploading my progress