Loads of changes, cleanups, improvements etc.
I derped, forgot to check what it removed!
Merge pull request #1 from tryy3/master

Update