* Not yet functional Commit amended for code style and cherry-pick cleanup by Adam Honse <calcprogrammer1@gmail.com>