Initial commit of first version by @IronCrystal.